如何在某个点更改面包屑轨迹的显示根?
比方说我的面包屑绘制了太阳系的地图。我希望我显示的轨迹从太阳系开始,直到我到达美国,在这一点上,我希望USA是根。因此,对于其他行星/大陆/国家,我会有这样的轨迹:
太阳系>木星>大红色漩涡
太阳系>地球>澳大利亚>悉尼
太阳系>地球>北美>加拿大
但一旦我到达美国,面包屑轨迹就不会显示为…
太阳系>地球>北美>美国
我希望美国成为显示的根
美国
美国>俄亥俄州
美国>加利福尼亚>旧金山
任何人都知道我如何实现这一点,无论是Drupal模块、Drupal技术还是template.php文件中的代码?
以下是php模板中创建面包屑的代码:
function cph_main_breadcrumb($variables) {
$breadcrumb = $variables['breadcrumb'];
$youAreHere = drupal_get_title();
$crumbs = ' ';
if (!empty($breadcrumb)) {
$crumbs = '<ul>';
foreach($breadcrumb as $value) {
$crumbs .= '<li>' .$value.'</li>';
}
$crumbs .= '<li>' . $youAreHere . '<li></ul>';
}
return $crumbs;
}
function MYTHEME_breadcrumb($variables) {
$breadcrumb = $variables['breadcrumb'];
//dpm($breadcrumb);
$youAreHere = drupal_get_title();
$crumbs = ' ';
if (!empty($breadcrumb)) {
$crumbs = '<ul>';
foreach($breadcrumb as $value) {
// Add an if statement to check current item
if($value == '<a href="/MY_PATH_TO_THIS_ITEM">USA</a>') {
// Reset the list
$crumbs = '<ul>';
}
$crumbs .= '<li>' .$value.'</li>';
}
$crumbs .= '<li>' . $youAreHere . '<li></ul>';
}
return $crumbs;
}
如果当前的breadcrumb值是"USA"的值,则重置breadcrump并重新启动它。
如果您想查找USA dpm()的当前项目,请使用$breadcrumb查找。请注意,如果美国的链接稍后更改,您也必须在此处更改它。。。