BreadCrumbsPlugin

Description

This plugin helps you to locate where you are, and shows you how you can escape from there using breadcrumbs navigation.

Two types of breadcrumb are supported; "location" breadcrumbs, which show you where you are in the site hierarchy, taking into account topic parent relationships, and "path" breadcrumbs, that simply show you where you have been, but without going in circles.

In a way, location breadcrumbs have always been supported using the META{"parent"} variable to display the list of parent topics. Since version the advent of hierarchical, subwebs breadcrumbs support of the standard engine does not allow the display of parent webs as part of of the location breadcrumbs.

Path breadcrumbs show you which topics you visited to reach the current topic. If you revisit a topic you visited earlier, the path is trimmed back to that topic, so it gives you a sort of visual history of where you have been on the site. Path breadcrumbs require that you have session support enabled.

The plugin also gives a great deal of flexibility in deciding which parts of the breadcrumbs should be rendered, and how each individual breadcrumb is displayed.

Configuration

While most settings are given as part of the BREADCRUMBS tag, there are a few settings to improve rendering breadcrumbs.

Enabling Path breadcrumbs

To switch on recording the path breadcrumbs, set the BREADCRUMBSPLUGIN_RECORDTRAIL to on. Otherwise the click path of the user won't be recorded and the type setting to the BREADCRUMBS will result in an undefined behaviour.

Displaying TopicTitles

TopicTitles are a concept introduced by the Foswiki:Extensions/DBCachePlugin. These are stored in a topic in the TOPICTITLE preference variable or in a formfield 'TopicTitle ' of a forms attached to the topic. If a TopicTitle is defined for a topic, it will be displayed in the breadcrumbs instead of the normal WikiWord topic name. For efficiency it is recommended to install the Foswiki:Extensions/DBCachePlugin to determine the TopicTitle.

Syntax

%BREADCRUMBS%, %BREADCRUMBS{"<web>.<topic>" ...}%

Parameters:

Pseudo-variables:
Each of the above format strings (format, header, footer, separator) may contain special variables:

Examples

default

%BREADCRUMBS%
System BreadCrumbsPlugin

path

%BREADCRUMBS{type="path"}%

breadcrumbs to a non-existent location

%BREADCRUMBS{
  "Web1/Web2/Web3.Topic"
  format="$name"
  separator=" &#187; "}%
Web1 » Web2 » Web3 » Topic

recurse="off"

%BREADCRUMBS{
  "Web1/Web2/Web3.Topic"
  format="$name"
  separator=" &#187; "
  recurse="off"}%
Web3 » Topic

recurse="once"

%BREADCRUMBS{"Web1/Web2/Web3.Topic"
  format="$name"
  separator=" &#187; "
  recurse="once"}%
Web2 » Web3 » Topic

include

%BREADCRUMBS{"Web1/Web2/Web3.Topic"
  format="$name"
  separator=" &#187; "
  include="Web(1|3).*"}%
Web1 » Web2 » Web3

exclude

%BREADCRUMBS{"Web1/Web2/Web3.Topic"
  format="$name"
  separator=" &#187; "
  exclude="Web2"}%
Web1 » Web2 » Web3 » Topic

Plugin Installation Instructions

You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.

Open configure, and open the "Extensions" section. Use "Find More Extensions" to get a list of available extensions. Select "Install".

If you have any problems, or if the extension isn't available in configure, then you can still install manually from the command-line. See http://foswiki.org/Support/ManuallyInstallingExtensions for more help.

Plugin Info

Plugin Author: Michael Daum
Copyright ©: 2006-2009, Michael Daum http://michaeldaumconsulting.com
License: GPL (GNU General Public License)
Release: v2.42
Version: 4694
Change History:  
20 Aug 2009: fixed usage of $web
03 Jul 2009: fixed fallback method to get the TopicTitle without DBCachePlugin
29 Jun 2009: use Foswiki DBCachePlugin now
17 Apr 2009: converted to Foswiki
07 Jan 2009: fixed breadcrumbs breadcrumbs title for pattern skin
11 Nov 2008: hide WebHome in location breadcrumbs
15 Sep 2008: switching off current topic in topicoff mode
01 Sep 2008: Oliver Krueger Bugs:Item5972 fixed: minor cosmetics
28 Apr 2008: many new features for 2.0: topic titles, ellipsis, ...
08 May 2007: respect HOMETOPIC setting, don't hardcoded 'WebHome'
19 Apr 2007: Crawford Currie added topicformat
20 Feb 2007: Crawford Currie added path breadcrumbs
18 Dec 2006: added $webtopic pseudo-parameter
31 Aug 2006: added NO_PREFS_IN_TOPIC; removed commonTagsHandler thus dropping cairo support
08 Aug 2006: fixed topic parents not showing up; don't show non-existing topics
29 Jul 2006: fixed infinit loop when a topic is its own parent topic
28 Jul 2006: initial version; don't add the topic parent 'WebHome' to the path
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.8
Plugin Home: Foswiki:Extensions/BreadCrumbsPlugin
Support: Foswiki:Support/BreadCrumbsPlugin
spacer