Problem
It is possible to turn on topmenuskin breadcrumbs globally in Public/TWikiPreferences with '* Set BREADCRUMBS = 1' but trying to turn it off selectively, eg. in public facing webs with a nice
DashBoard where the trail is superfluous such as Public/WebPreferences with '* Set BREADCRUMBS = 0' does not work.
Analysis
The code in templates/view.topmenu.tmpl only checks that the BREADCRUMBS variable has been defined to activate the feature. There is no TWiki meta-code that does the opposite of the 'Set', ie. a '* Unset BREADCRUMBS' command, so it is not possible to undefine the variable in say, Public/WebPreferences.
Solution
Made a small modification to templates/view.topmenu.tmpl to test that the BREADCRUMBS variable has been defined AND has a value >0 before activating the feature. Now writing '* Set BREADCRUMBS = 0' in eg. Public/WebPreferences turns off the feature in that web while leaving it on in all others.
Here is a patch to templates/view.topmenu.tmpl to make it possible to selectively turn off topmenuskin breadcrumbs.
--
TWiki:Main/TomCrane - 2017-06-08
I discovered a clash between the use of BREADCRUMBS as a variable here in topmenuskin and in
BreadCrumbsPlugin which also defines a BREADCRUMBS variable. Using assignments such as '* Set BREADCRUMBS = 1' in eg.
WebPreferences to control the display of the topmenuskin breadcrumbs trails at the top of each page, results in eg. %BREADCRUMBS% TWiki ML calls elsewhere to the
BreadCrumbsPlugin code returning '1' instead of the expected breadcrumbs trail.
My solution: Rename the BREADCRUMBS variable in topmenuskin and other references to it to TOPMENU_BREADCRUMBS.
Tom Crane
--
TWiki:Main.TomCrane - 2017-09-14