【问题标题】:wordpress specified nav menu container class differentwordpress 指定的导航菜单容器类不同
【发布时间】:2014-03-30 13:13:31
【问题描述】:

下面的静态html代码

<div class="color1 navbox">
    <ul>
      <li><a href="">item1</a></li>
      <li><a href="">item2</a></li>
      <li><a href="">item3</a></li>
      <li><a href="">item4</a></li>
      <li><a href="">item5</a></li>
      <li><a href="">item6</a></li>
    </ul>
</div>
<div class="color2 navbox">
    <ul>
      <li><a href="">item1</a></li>
      <li><a href="">item2</a></li>
      <li><a href="">item3</a></li>
      <li><a href="">item4</a></li>
      <li><a href="">item5</a></li>
      <li><a href="">item6</a></li>
    </ul>
</div>

我想使用 wp_nav_menu() 获取通过管理面板设置的菜单项,每个 div 容器包括 6 个项目。 我对wp不熟悉,所以需要你指出如何循环。 谢谢。

// 我找到了方法并且运行良好。

  $menus = wp_get_nav_menus();
  $menu_items = wp_get_nav_menu_items($menus[0]);

  $i = 1;

  $total = count($menu_items);

  $menuBox = ceil($total/6);
  foreach ($menu_items as $key=>$menu_item):
    if ($key%6==0) {
      echo '<div class="color'.$i.' grid_6 navbox"><ul>';
      $i++;
    }
    echo "<li> <a href='$menu_item->url'>$menu_item->title</a></li>";

    if ($key== $total-1) {
      echo '</ul></div>';
    }else{
      for ($j=0; $j < $menuBox; $j++) {
        if ($key == $j*6-1) {
           echo '</ul></div>';
        }
      }
    }
    endforeach;

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    我想我理解你的问题。最好的方法是声明自定义导航位置,然后在需要的地方调用它们(如果您决定在页面上的多个位置使用相同的导航,这样可以避免重复的 ID)。

    这将进入您的函数文件(根据需要更改名称):

    function nav_menu_locations() {
      // Register nav menu locations
      register_nav_menus( array(
        'header' => 'Header Menu',
        'sidebar' => 'Sidebar Menu',
        'footer' => 'Footer Menu'
        )
      );
    }
    add_action( 'after_setup_theme', 'nav_menu_locations' );
    

    然后调用其中一个,在适当的模板中使用它:

    <?php wp_nav_menu(array('theme_location' => 'header')); ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 2014-02-16
      • 2012-09-18
      • 2019-09-08
      • 1970-01-01
      相关资源
      最近更新 更多