Currently, the breadcrumbs are output at the top of the page, then moved in to the breadcrumb bar further down the page as follows:
Breadcrumbs output at top:
<div id="breadcrumb.data" style="display:none">
$sitebuilder.parseBreadcrumbs( $sitemeshPage.getProperty("page.breadcrumbs") )
</div>
Then moved to the breadcrumb bar:
<span id="breadcrumb.display" class="topBarDiv"></span>
<script type="text/javascript">
document.getElementById("breadcrumb.display").innerHTML = document.getElementById("breadcrumb.data").innerHTML;
document.getElementById("breadcrumb.data").innerHTML = "";
</script>
This can cause problems with search engine (eg. google) results as they sometimes locate a keyword in the breadcrumbs and therefore show the text in the breadcrumbs as the result summary rather than a more meaningful paragraph of text from the page body.
Because page titles often contain keywords relating to whatever the page is about, search results can become quite grim looking as a result.
If the breadcrumbs were output at the bottom of the page and moved up to the breadcrumb bar, we'd avoid this problem in the majority of cases...
1. Output breadcrumb bar as normal
<span id="breadcrumb.display" class="topBarDiv"></span>
2. At bottom of page, output the actual breadcrumbs then immediately move them up to the breadcrumb bar:
<div id="breadcrumb.data" style="display:none">
$sitebuilder.parseBreadcrumbs( $sitemeshPage.getProperty("page.breadcrumbs") )
</div>
<script type="text/javascript">
document.getElementById("breadcrumb.display").innerHTML = document.getElementById("breadcrumb.data").innerHTML;
document.getElementById("breadcrumb.data").innerHTML = "";
</script>
Note - by bottom of page, I mean anywhere after the main page body is output.
It may be desirable to leave this until B-NG as the breadcrumbs will likely be output via a macro which can be placed in any panel and the teleportation plugin can be used to move them elsewhere.