=== Instant Breadcrumbs === Contributors: loseyourmarbles Donate link: http://loseyourmarbles.co/instant-breadcrumbs/contribute Tags: breadcrumbs, navigation, links, menu Requires at least: 3.0.0 Tested up to: 3.8.1 Stable tag: 1.2.1 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Instant Breadcrumbs adds a breadcrumb trail to your WordPress blog's primary navigation menu. No theme editing required! == Description == Instant Breadcrumbs adds a breadcrumb trail to your WordPress blog's primary navigation menu. No theme editing required! Including a breadcrumb trail on your site not only makes it easier for visitors to navigate your site, but also allows search engines to better explore your blog and include the breadcrumb information in rich snippet data in search results. Many breadcrumb plugins exist, but normally require either theme editing, or use of a theme that is already customized to include the breadcrumb function. In addition, editing the theme is usually followed by some CSS styling to make the breadcrumb trail match the overall 'look' of the site. Instant Breadcrumbs takes a different approach. Since breadcrumbs are a navigation aid, the generated trail is automatically added to the front of your existing primary navigation menu. This allows it to not only function straight out of the box with a large number of themes, but also use the existing styling of your primary navigation menu. A quick overview of Instant Breadcrumbs features: * Works with both custom primary menus and the default 'page' menu generated by WordPress; * Produces RDFa-compliant breadcrumb trails that may be used by Google and others in search results; * Supports customization of the breadcrumb titles for pages such as the front page, archives, and search; * Re-uses existing top-level entries in the primary menu to avoid repeated links; * Includes CSS classes for added breadcrumbs for optional further styling if desired; * Use the built-in breadcrumb generator, or third-party generators such as Yoast ([WordPress SEO][yoastseo]) and [Breadcrumb NavXT][navxt], adding those to the nav menu without theme editing. Tested against Breadcrumb NavXT 5.0.1 and WordPress SEO 1.4.24; * Supports HTML markup in post titles, with the option to disable it; * "Manual" mode allows insertion into templates for themes that do not use the WordPress primary navigation menu; * A widget is available if you would prefer to show the breadcrumb trail in a sidebar. Visit the [Plugin Blog Page][pluginblog] if you have a comment or suggestion for the next update of the plugin! Ideas for the next version always welcomed; support for other languages or breadcrumb generators would be appreciated. If Instant Breadcrumbs is useful to you, please consider making a small contribution via [Flattr][flattrlink] to help support the continued development and improvement of this plugin, or leave a review at the [WordPress Plugin Directory][plugindir]. Banner image is [Trail of (gluten-free) bread crumbs][bannerimage] by [Kat Selvocki][bannerartist] and used here under [CC BY-NC-ND 2.0][bannerlicense]. [pluginblog]: http://loseyourmarbles.co/instant-breadcrumbs [bannerimage]: http://www.flickr.com/photos/shinyredtype/5692770225/in/photostream/ [bannerartist]: http://www.flickr.com/photos/shinyredtype/ [bannerlicense]: http://creativecommons.org/licenses/by-nc-nd/2.0/ [yoastseo]: http://wordpress.org/plugins/wordpress-seo/ [navxt]: http://wordpress.org/plugins/breadcrumb-navxt/ [plugindir]: http://wordpress.org/plugins/instant-breadcrumbs/ [flattrlink]: http://loseyourmarbles.co/instant-breadcrumbs/contribute == Installation == 1. Unzip and upload the `instant-breadcrumbs` directory to the `/wp-content/plugins/` directory; 1. Activate the plugin through the 'Plugins' menu in WordPress; 1. Optionally change settings values in the 'Breadcrumbs' settings page, listed under 'Appearance'; 1. If using a supported breadcrumb plugin as generator, customize that plugin settings; 1. Optionally add custom CSS, although the plugin is designed to work without theme editing; 1. If your theme does not have a primary navigation menu, insert `` into your theme. You may pass optional HTML as a first parameter to separate items, and pass `true` as a second parameter if you wish to return the result rather than write it directly to the page. It is strongly recommended that you perform your own CSS styling in manual mode; 1. If you prefer, you may include the breadcrumb trail in a widget. Go to the 'Widgets' submenu (under 'Appearance' in the WordPress admin) and drag the Instant Breadcrumbs widget to the appropriate position. You may set a title and optional separator HTML. As above, it is recommended you apply your own CSS styling. == Frequently Asked Questions == = Which themes does the plugin support? = Instant Breadcrumbs is designed to work with "generic" WordPress blog themes. In other words, these are basic themes which have a header that calls `wp_nav_menu` in their header to include your primary menu (or a menu based on your static pages, if no menu has been defined). The default themes that ship with each WordPress installation are good examples, as are most "general purpose" blogging themes. The plugin is intended to provide easy breadcrumb functionality for basic blogging. If your web site is highly customized, and your theme contains its own custom code to generate menus or navigation, then it's likely that Instant Breadcrumbs may not be called when your site is displayed. In this case, you can revert to theme editing and call `instant_breadcrumb()` manually to insert the breadcrumb trail at an appropriate location in your theme. You can optionally insert HTML between the breadcrumb elements, and you should perform your own CSS styling. Alternatively, you may insert the supplied widget in an appropriate location. = My home page appears twice in the modified menu? = Instant Breadcrumbs will reuse menu items wherever possible, for example when viewing a page that is already in the top-level menu. However it cannot reuse a menu item link if doing so would mean the generated breadcrumbs are no longer in order. The usual example of this is if the home page already appears in the primary menu. The generated breadcrumb trail requires the home link to be first. The easiest workaround for this is simply to customize your menu so the home page is not included a second time. = How can I apply custom CSS to the added breadcrumbs? = The Instant Breadcrumbs plugin adds the CSS class `ib-crumb` to the `li` element of any breadcrumbs in the menu, and `ib-lastcrumb` to the last link in the breadcrumb trail representing the current page. Furthermore, the class `ib-added` is added to the `li` element of new menu items created by the plugin, and `ib-edited` to existing menu items. These may be styled in your theme's `style.css` should for instance you would like breadcrumb items to be highlighted in a different color. = Why do HTML characters such as <, >, and & appear incorrectly in the output? = If your post title includes these characters, be sure to escape them correctly (for example as `<`, `>`, and `&`). Otherwise they may be rendered incorrectly at any time they may appear on the Web page, including in the breadcrumb trail. This is nothing particular about Instant Breadcrumbs, but all breadcrumb generators, and Web pages in general, behave similarly. As of version 1.2, you may include HTML markup in your post titles, such as `for emphasis`, and the Instant Breadcrumb trail will optionally include it in the breadcrumb as well. This option is enabled by default. Disabling it will use text only in each crumb. == Screenshots == 1. A screenshot of Instant Breadcrumbs generated on a blog post in TwentyFourteen, showing the breadcrumb trail for the current post, including the post category. This is without any theme editing; 2. The exact same blog in TwentyTwelve, no theme editing; 3. ... and in TwentyThirteen, again without theme editing; 4. The same page in TwentyFourteen on a smaller display, showing the breadcrumb trail automatically styles with the navigation menu; 5. The breadcrumb trail for a page that already appears in the nav menu, reusing the existing link. == Changelog == = 1.3 = * *FIX* Corrected the order of hierarchical post types in the breadcrumb. * *FIX* Changed category selection to use count, rather than term order. * *FIX* Corrected a bug in the current URL lookup when using Yoast or NavXT. * *FIX* Corrected the search path for language translation files. * *NEW!* Support for manual insertion of a breadcrumb trail into a theme with a PHP call. * *NEW!* Added a widget to allow the user to insert and display the breadcrumb trail in a sidebar. * Readme and FAQ updates. * Link to contribute to the plugin development via Flattr. = 1.2.1 = * *FIX* HTML tags in post titles now handled correctly, for both built-in and external breadcrumb generators. * *NEW!* Option to optionally strip HTML tags from the generated titles. * Updated test environment to WordPress 3.8.1, WordPress SEO 1.4.24, and Breadcrumb NavXT 5.0.1. * Small readme and FAQ updates. = 1.1 = * *FIX* Corrected an issue where breadcrumb titles could be empty. Use defaults in this case. * *FIX* Enable the breadcrumbs to appear even if the navigation menu or page list are empty. * *NEW!* Supports Yoast and Breadcrumb NavXT breadcrumb trails. * *NEW!* Added more CSS classes to be compliant with `wp_nav_menu` item styling. * Display default values for breadcrumb titles in the settings page. = 1.0 = * Initial release. == Upgrade Notice == = 1.3 = Bug fixes for post hierarchies, category selection, current URL and language search path. Support for non-standard themes. New breadcrumb widget. = 1.2.1 = Bug fixes for HTML tags included in post titles. = 1.1 = If breadcrumbs do not appear or have missing titles, you should upgrade for these bug fixes. = 1.0 = Initial release.