如何在某个点更改我的痕迹路径的显示根?
让我们说我的面包屑映射太阳系。我希望我的显示路径以 Solar System 开头,直到我到 USA ,此时我希望 USA 成为根。所以对于其他行星/大陆/国家我会有这样的踪迹:
太阳能系统>木星>大红色漩涡
太阳能系统>地球>澳大利亚>悉尼
太阳能系统>地球>北美>加拿大
但是一旦我到了 USA ,而不是像面包屑一样出现......
太阳能系统>地球>北美> USA
......我希望美国成为显示的根
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;
}
答案 0 :(得分:0)
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;
}
如果当前面包屑值是“USA”的值重置面包屑并再次启动它。
如果你想找到USA dpm()的当前项目,可以查找$ breadcrumb。请注意,如果稍后更改美国的链接,您还必须在此更改...