开发者

How to display parent menu item in node template? Drupal 7

开发者 https://www.devze.com 2023-03-28 03:37 出处:网络
How do i display the parent menu item in the node template? I want to display parent menu item along with current page; but i dont need others.

How do i display the parent menu item in the node template?

I want to display parent menu item along with current page; but i dont need others.

Edit: I enabled menu breadcrumb module and added the following code:

<?php              
                $menuParent = menu_get_active_trail();
                if (sizeof ($menuParent) >= 2 && $menuParent[2]) {
                     $menuParent = $menuParent[1]['link_title'];
                     print $menuParent; 
                } 
            ?>

It is working fine, but I am getting an error for 开发者_如何转开发the pages which doesn't have 2nd level navigation: Error: Notice: Undefined offset: 2 in include()

I thought my condition sizeof will take care of the problem, but not working.


Use PHP array tools to get you the right item in the array:

<?php
  $menuParent = menu_get_active_trail();
  //get rid of the last item in the array as it is the current page
  $menuParentPop = array_pop($menuParent);
  //Just grab the last item in the array now
  $menuParent = end($menuParent);
  //if it is not the home page and it is not an empty array
  if(!empty($menuParent) && $menuParent['link_path'] != ''){
    print $menuParent['title'];
  } else{
    print $title;
  }
?>


You're checking $menuParent[2] but then using $menuParent[1]. Maybe check $menuParent[1]:

if (sizeof ($menuParent) >= 2 && $menuParent[1]) {

PHP's arrays are zero-indexed, so slot 1 is the second slot.

0

精彩评论

暂无评论...
验证码 换一张
取 消