【问题标题】:How do I output a single menu link in drupal 7 knowing it's $mlid?知道它是 $mlid 的情况下,如何在 drupal 7 中输出单个菜单链接?
【发布时间】:2014-05-30 15:49:41
【问题描述】:

我正在使用具有固定父级的菜单块,因此只有子级被渲染......但我想渲染父级链接。我能够得到父母的 $mlid,但这是我所能得到的。 theme_menu_link 引发错误,因为 menu_link_load 返回一个带有 [title] [href] 之类的键的数组,而不是像 theme_menu_link 期望的 [#title] [#href] 键。有人可以告诉我如何呈现单个菜单链接的输出吗?谢谢!

function mytheme_preprocess_region(&$vars){
    if($vars['region'] == "footer-top"){
            foreach($vars['elements'] as $key => $item){
                    if(array_key_exists('#block', $item)){
                            $block_type = $item['#block']->module;
                            if($block_type == "menu_block"){
                                    $plid = $item['#config']['parent_mlid'];
                                    $parent_menu_link = menu_link_load($plid);
                                    $parent = theme('menu_link', $parent_menu_link);

                                    $output .= '<section>' ./* $parent .*/ $vars['elements'][$key]['#children'] . '</section>';
                            }
                    }
            }
            $vars['content'] = $output;             
    }
}

【问题讨论】:

    标签: drupal drupal-7 drupal-navigation


    【解决方案1】:

    如果你只想要链接,你可以这样做:

    $parent_menu_link = menu_link_load($plid);
    $parent = l($parent_menu_link['title'], $parent_menu_link['href'], $parent_menu_link['localized_options']);
    
    $output .= '<section>' . $parent . $vars['elements'][$key]['#children'] . '</section>';
    

    干杯,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-08
      • 1970-01-01
      • 1970-01-01
      • 2015-08-28
      • 2018-08-11
      相关资源
      最近更新 更多