当前位置

直接调用drupal_set_breadcrumb设置面包屑导航条

James Qi 在 2011年5月5日 - 16:00 提交
内容摘要: 以前用MediaWiki的时候,为了实现面包屑导航条的功能,我采用在Wiki页面中插入HTML代码的方式来实现,效果看上去还不错,遇到过一些站长找我问是如何实现的,其实自己看页面代码就可以知道,......

  以前用MediaWiki的时候,为了实现面包屑导航条的功能,我采用在Wiki页面中插入HTML代码的方式来实现,效果看上去还不错,遇到过一些站长找我问是如何实现的,其实自己看页面代码就可以知道,Wiki的源代码都是公开的,照着复制或者稍微改改就可以用了。

  改用Drupal后,找到一个叫“Custom Breadcrumbs”的第三方模块,可以比较简单地调用CCK中的字段或者Node的一些属性参数来实现导航功能,不过感觉不太灵活,例如CCK、Node中没有的参数就无法插入。

  今天找了一个叫“drupal_set_breadcrumb”的函数,可以非常灵活地实现面包屑导航条功能,通过模板插入任何变量都可以,例如:

$breadcrumb = array();
$breadcrumb[] = l('首页 (Home)', '<front>');
$breadcrumb[] = l($province.' ('.$province_pinyin.')', 'category/地区/'.$province);
$breadcrumb[] = l($city.' ('.$city_pinyin.')', 'category/地区/'.$province.'/'.$city);
$breadcrumb[] = $name;
drupal_set_breadcrumb($breadcrumb);

  这样的调用可以在任何页面实现,例如各种类型内容页面、views、block、分类页等,用了这个函数完全可以把Custom Breadcrumbs卸载掉了。