Making Sense of the *title Breadcrumb Template Tags

Currently, there are several, closely related template tags that each exhibit slightly different behaviors. These are: %title%, %htitle%, %ftitle%, and %fhtitle%. As their names suggest, they will be replaced with the resource’s title. However, how this title is processed differs between the tags.

Note that the “Max Title Length” setting is deprecated. Hence, both %ftitle% and %fhtitle% are deprecated and not recommended for use. They are included in this discussion for the sake of completeness.

Below is a table outlining the behavior of these tags for the same title with the max length set to ~10 characters and with the max length setting disabled.

Template Tag Max Title Length1 Title Result
%title% 10 Hello <em>World</em> Leaders Hello <em…
%htitle% 10 Hello <em>World</em> Leaders Hello <em…
%ftitle% 10 Hello <em>World</em> Leaders Hello World Leaders
%fhtitle% 10 Hello <em>World</em> Leaders Hello <em>World</em> Leaders
%title% Disabled Hello <em>World</em> Leaders Hello World Leaders
%htitle% Disabled Hello <em>World</em> Leaders Hello <em>World</em> Leaders

%title% and %htitle%

Notice that the resulting strings for the standard %title% tag and the %ftitle% tag do not contain HTML tags. Thus, they are safe for use within HTML tag attributes (e.g. the title attribute). To maintain HTML tags present in the resource’s title, use the %htitle% tag.

%ftitle% and %fhtitle%

Note that the Max Title Length setting does not affect the resulting string for the %ftitle% and %fhtitle% template tags. In fact, by design, they are the same as %title% and %htitle% when “Max Title Length” is disabled. However, note that since the Max Title Length setting is deprecated, these template tags are as well.

Lastly, note that when using the Max Title Length setting, HTML tags may be left open or even incomplete. Therefore, it is strongly recommended that CSS is used to trim the breadcrumb title length rather than the deprecated Max Title Length setting. An additional benefit to using CSS is it does not mess with the actual content of the breadcrumb trail, allowing search engines to pick up on the full titles rather than the trimmed ones.

-John Havlik

[end of transmission, stay tuned]

Notes:

  1. Note that use of the Max title Length setting has been deprecated in favor of using CSS to trim Breadcrumb titles lengths.

Breadcrumb NavXT Menu Magic 1.1.5

Announcing the immediate availability of Breadcrumb NavXT Menu Magic 1.1.5. This version fixes a bug relating to Breadcrumb NavXT Menu Magic’s handling of CPT root pages.

Previously, if a CPT root page was located in a menu, the menu hierarchy would only be followed when on said CPT root page, or if said root page had a parent page that is not the front page. This normally manifested itself when on a single post instance of a CPT, the menu hierarchy containing the CPT root page would not be followed. With version 1.1.5, Breadcrumb NavXT Menu Magic will always follow the menu hierarchy that a CPT root page is in.

Users with valid and activated license keys should receive an update notification within the WordPress dashboard and be able to use the update mechanism to update (just like with any plugin in the WordPress.org repository).

-John Havlik

Breadcrumb NavXT BuddyPress Extensions 1.0.2

Announcing the immediate availability of Breadcrumb NavXT BuddyPress Extensions 1.0.2. This version fixes two bugs present in the previous version of Breadcrumb NavXT BuddyPress Extensions.

The first issue fixed was the PHP errors that appeared due to a change in made in Breadcrumb NavXT 5.7.0. Additionally, the cause of PHP errors on group creation pages on the front end has been fixed.

As for the version number, yes, this did move from 0.1.1 to 1.0.2. Rather than maintain sub 1.x version numbers, I am standardizing on 1.0 as the first public release of my extension plugins.

-John Havlik

[end of transmission, stay tuned]

Breadcrumb NavXT 5.7.0

Holy Schema.org BreadcrumbList compliant JSON-LD breadcrumb trails Batman! Breadcrumb NavXT 5.7.0 introduces a new bcn_display_json_ld() function. Additionally, three bugs were fixed in this release.

The new bcn_display_json_ld() function outputs JSON-LD data that is Schema.org BreadcrumbList compliant. This helps facilitate the display of breadcrumbs in WordPress backed JavaScript applications. Additionally, the selected BreadcrumbList format is supported by Google.

On the bug fix front, the cause of PHP Errors when running the uninstaller from within WP CLI was fixed. Additionally, the cause of a PHP Warning in bcn_breadcrumb_trail::find_type() was resolved. Lastly, a typo in the settings page was fixed.

Looking Forward to 6.0.0

The next release of Breadcrumb NavXT will be 6.0.0. It is scheduled for mid-summer in celebration of 10 years of maintaining Breadcrumb NavXT (originally released as Breadcrumb Navigation XT). Be aware that 6.0.0 will drop the Max Title Length setting (already deprecated in favor of using CSS), along with the associated %ftitle% and %fhtitle% breadcrumb template tags.

Translations

As explained in the Breadcrumb NavXT Translations Moving to Language Packs article, Breadcrumb NavXT has moved away from shipping translations with the plugin. This is the first release to ship without any included translations, all translations are available via language packs, or from the Breadcrumb NavXT Translation Project.

If you would like to contribute to translating Breadcrumb NavXT, please visit the Breadcrumb NavXT Translation Project. A big thanks to all of the translators that have contributed to the translations in the past and continue to contribute.

As always, you can grab the latest version of Breadcrumb NavXT from the Breadcrumb NavXT page. If you experience any issues with this version of Breadcrumb NavXT, please leave a comment on this post detailing the issue.

-John Havlik

[end of transmission, stay tuned]