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]

Use ModSecurity Not A Plugin

When dealing with login attacks against wp-login.php and xmlrpc.php, consider using an application firewall such as ModSecurity rather than a WordPress plugin. Why? ModSecurity runs before the request hits PHP. Thus, WordPress is not even run on these known to be bad requests.

Some Numbers

Prior to enabling ModSecurity rules protecting wp-login.php and xmlrpc.php, these were the most popular files hit across all Weblogs.us WordPress installs. In December of 2016, wp-login.php was 23.48% of all hits, xmlrpc.php was 19.75%—A total of 43.23% all hits for what are really non-user facing pages. Similar behavior had been seen for the months prior as well.

After enabling ModSecurity rules punishing multiple bad login attempts for wp-login.php and xmlrpc.php, their total hits plummeted. In February, they accounted for only 3.78% of all hits. Did the robots go away? No, they were getting 403 errors, nearly 20% of hits resulted in a 403 error.

Caveat Emptor

Implementing successive failed login attack mitigation rules is quite easy on Apache. Rather than repeat how to do this, see Mika’s post WordPress login protection using ModSecurity. Unfortunately, Nginx is a different story. While ModSecurity is available for Nginx, any rule that requires a locationmatch parameter will not work (locationmatch is Apache specific). Instead, a custom location rule for wp-login.php and xmlrpc.php can be generated with ModSecurity enabled and the extra rules applied. It isn’t terribly elegant, but appears to work.

Ease of implementation aside, the performance benefits from blocking malicious login traffic earlier makes using a ModSecurity based implementation worthwhile. At Weblog.us, we dramatically cut down on resource usage by implementing ModSecurity rules for blocking malicious wp-login.php and xmlrpc.php accesses.

-John Havlik

[end of transmission, stay tuned]

Breadcrumb NavXT Multidimension Extensions 2.1.0

Announcing the immediate availability of Breadcrumb NavXT Multidimension Extensions 2.1.0. The single new feature in this version is increased support for new features introduced in Breadcrumb NavXT 5.6.0. Specifically, this version adds support for Breadcrumb NavXT 5.6.0’s breadcrumb trail cache avoidance ‘force’ parameter for its display functions and in the Breadcrumb NavXT widget.

You can grab Breadcrumb NavXT Multidimension Extensions from the WordPress.org plugin repository.

-John Havlik

[end of transmission, stay tuned]

Breadcrumb NavXT 5.6.0

Holy incremental improvements Batman! Breadcrumb NavXT 5.6.0 ships with two new features and two bug fixes. On the feature front, a fourth parameter was added to the two display functions. This parameter bypasses the internal breadcrumb caching mechanism. Additionally, in the settings page, the breadcrumb template settings are now multiple line text boxes. Previously, the default breadcrumb templates were getting quite long and hard to edit on a single line. This should make editing of the breadcrumb template easier.

Two bugs were squashed is this release. The first involved Breadcrumb NavXT inappropriately adding the blog breadcrumb into the breadcrumb trail for search result pages. The second bug previously allowed the blog breadcrumb options to be available in the settings page even when a Posts Page was not set.

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]

WP Lynx 1.2.0

Presenting WP Lynx 1.2.0: PDF thumbnail image support, multiple URL fetching, and a few under the hood improvements.

Prior to the 1.0.0 rewrite of the frontend interface, WP Lynx supported entering multiple URLs in the URL field and fetching them. This behavior has been reintroduced in 1.2.0, simply add a space between each of the URLs you want to fetch.

PDF support in the form of generating preview/thumbnail image for the first page of the PDF has been added. Since WordPress 4.7 is not available yet, this relies strictly on Imagick. The intent is to switch to the WordPress methods for 1.3.0.

On the bug fix front, a bug that caused Lynx Prints to fail to insert into some user’s post editor has been fixed. Additionally, pages lacking a HTML title element will no longer throw PHP warnings.

You can grab the latest WP Lynx on the WP Lynx WordPress.org plugin page.

-John Havlik

[end of transmission, stay tuned]