2012-04-10 59 views
5

如何将面包屑添加到考勤模块的页面中。如何添加面包屑?

我已经使用了下面的钩子,但它也改变了其他模块中所有页面的面包屑。

function attendance_init() { 
// set the breadcrumb 
$breadcrumb = array(); 
$breadcrumb[] = l('Home', '<front>'); 
$breadcrumb[] = l('People', 'group/node/'. arg(2) .'/people'); 
$breadcrumb[] = l('Attendance', 'group/node/'. arg(2) .'/people/attendance'); 
drupal_set_breadcrumb($breadcrumb);   
} 
+1

这里有一个关于Drupal的相关问题:http://drupal.stackexchange.com/ – Paul 2012-04-10 10:40:44

回答

5

如果你想改变一个特定的内容类型节点的面包屑,尝试使用hook_node_view_alter()

下面是一个例子:

function attendance_node_view_alter(&$build) 
{ 
    $node = $build['#node']; 
    if($build['#view_mode'] == "full" && $node->type == "attendance") 
    { 
     $breadcrumb = array(); 
     $breadcrumb[] = l('Home', '<front>'); 
     $breadcrumb[] = l('People', 'group/node/'. arg(2) .'/people'); 
     $breadcrumb[] = l('Attendance', 'group/node/'. arg(2) .'/people/attendance'); 
     drupal_set_breadcrumb($breadcrumb); 
    } 
} 

希望这个作品......穆罕默德

+0

感谢穆罕默德的帮助。我通过其他方式实现了这一点。 – 2012-04-12 06:20:07

+9

Umar下次你是否介意发布你如何实施你的修复方法,而不是接受答案?这很有用,因为它可以让你解释你如何解决你的问题,这可能会帮助未来的用户。 – 2012-09-10 08:39:25