2011-08-13 18 views
0

ノードテンプレートに親メニュー項目を表示するにはどうすればよいですか?ノードテンプレートに親メニュー項目を表示する方法は? Drupal 7

現在のページと一緒に親メニュー項目を表示したい。しかし、私は他人を必要としません。

編集:私は、メニューの階層リンクモジュールを有効にし、次のコードを追加しました:それは正常に動作しているが、私は第二レベルのナビゲーションを持っていないページのエラーを取得しています

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

: エラー:注意:未定義オフセット:2 in include()

私の条件sizeofは問題を処理するが動作しないと思った。

答えて

0

あなたは$menuParent[2]をチェックしていますが、$menuParent[1]を使用しています。多分$menuParent[1]をチェック:

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

PHPの配列はゼロインデックスなので、スロット1は、第2のスロットです。

8

使用PHPの配列ツール配列にあなたの右のアイテムを取得するには:

<?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; 
    } 
?> 
+0

あなたがメニューパスのルートを取得したい場合、それは '$ menuParent [1]'にする必要があります。 $ menuParent [0]は常に先頭ページを返しますので、ページにある場合は$ menuParent [1]が設定されているかどうかを確認してからアクセスしてください –

関連する問題