Holy taxonomy options Batman! With Breadcrumb NavXT you can now have breadcrumbs delimit posts by either hierarchical categories or linear tags. Improvements were also made in the max title trimming for posts. The administrative interface was heavily tweaked, as was the bcn_security function, it should no longer produce errors. On API malfunctions, instructions are now provided on a known method of fixing the problem. Lastly, attachments to pages will now show the full page hierarchy leading up to them, in contrast to attachments to posts which only show the parent post name. Also, WordPress 2.5 is required for this version, it fixed some things and made other things easier to implement.
Just a note to users that directly access the bcn_breadcrumb class, the method of displaying things has changed from 2.0. The class was heavily reorganized, again, to allow it to be more modular. You must call the member function assemble() before calling display().
Want your breadcrumbs to show the tags your post is in, the latest development build of Breadcrumb NavXT will do that. To accommodate this new feature the settings API has been modified a bit to rename one option and three new ones were added. Naturally, hierarchical categories are the default setting, but if you’d rather use a flat scheme that can be done through tags. This is the only method to achieve displaying “multiple categories” that will be supported by Breadcrumb NavXT.
An additional note on the new breadcrumb class for 2.1. It will be possible to support breadcrumbs for pages that are dynamically generated by other plug-ins on existing WordPress pages. An example of such a page is the product pages created by e-commerce. This is due to a change in the class that has the breadcrumb generated separate of output. However, this does not mean I will be supporting these other plug-ins. The responsibility ultimately rests on the shoulders of the plug-in developers to support this. Note that the administrative interface will not work with this usage as the overriding plug-in will need to call and manipulate the class itself.
This evening I took a break from the development of Breadcrumb NavXT 2.1 and played with my GPX reader/plotter. Previously, on a 3.0Ghz Pentium 4 computer running linux and in Firefox 2.0 the maximum number of coordinates that can plotted using the GPolyline element was about 200. This was the max that maintained reasonable usability (the actual limit was somewhere in the 300s where it no longer rendered). With my laptop, a 2.8Ghz Core 2 Duo, still has a rather low limit of about 250 while maintaining usability. Some of my runs are over 300 track points, and these were not even that long of routes. I’m talking about somewhere between three and four miles.
Obviously this is not good, and that is why WP Trainer was not released last year. The solution to this problem is dynamic loading of the points, and using semi-sophisticated algorithms to remove “unneeded” points, such as ones that are outliers and ones that are in the middle of a straight line. Naturally, this is not a trivial thing to implement. Thus, it may be June before something is together for general consumption.
The latest development build of Breadcrumb NavXT now fully supports static front pages. Currently only the official WordPress method of defining a static front page is supported (using the options in Options>Reading). This was made possible thanks to some new conditional tags in WordPress 2.5. Thus, Breadcrumb NavXT 2.1 will require WordPress 2.5.
Next on deck is allowing breadcrumbs by tag or category. Categories would retain their current functionality, but tags will do what categories did in Breadcrumb Navigation XT. After that I’ll look into creating a widget for it. That will be the cutoff for 2.1, and I’ll do some code reduction as WordPress 2.5 will be a requirement so some old hacks can be removed. These are mainly located within the api file and only affect the administrative interface.
Version 2.1 will contain some major changes to the internal structure of the breadcrumb data object. Most of the API is not changing, and the changes are transparent for users of the administrative interface. Those who directly access the breadcrumb class will need to make sure to call assemble(); before display();. Failure to do so will result in unexpected behavior. These changes should be taken note of if using the latest SVN build of Breadcrumb NavXT, as it will be updated almost daily until things are ready.
Once the currently known bugs are worked out, which for the most part they are, the next order of business is getting things working correctly for static front pages. Static front pages will be supported via only one method of implementation for the time being. That method involves using the built in WordPress triggers, setting a page named home and setting the appropriate options in the administration panel under Options > Reading.
Even though 2.0.3 should have fixed the little PHP warning, it seems to not have. Fear not, this has been fixed in the SVN trunk. The other bug, which reveals it’s hideous head when activating the plug-in may be fixed as well. The error no longer gets thrown on the testbed, and it had to do with using require_once(); or include();. If anyone still receives either of these errors with the testing build please report it.
As an aside, Attachment NavXT won’t be developed. Later this month I’ll release the old code, but with the release of WordPress 2.5 it is no longer needed. In WordPress 2.5 there are some gallery functions that work with attachments, which is exactly what Attachment NavXT does.