【问题标题】:Materializecss wordpress mobile side menu in a collapsible可折叠中的 Materializecss wordpress 移动侧边菜单
【发布时间】:2016-03-04 04:03:17
【问题描述】:

我一直在尝试使用 MaterializeCSS 制作一个 wordpress 主题。除了我的移动侧边菜单外,我几乎所有东西都在工作。在我的菜单中,我有 4 个主要项目,它们下面有子页面。我想在侧边菜单中以同样的方式显示它,使用“可折叠”类。在我不动态创建菜单项的测试环境中,我可以让它工作,但每当我想让 Wordpress 创建的菜单时,我都无法实现。

我知道我应该使用 navwalker,我已经摆弄了几个小时,但我无法让它工作。

我想要的小提琴:https://jsfiddle.net/bdf7yvbc

<ul class="collapsible collapsible-accordion">
  <li>
    <a class="collapsible-header">MSG</a>
    <div class="collapsible-body">
      <ul>
        <li><a href="bestuur.php">Bestuur</a></li>
        <li><a>Commissies</a></li>
        <li><a>Agenda</a></li>
      </ul>
    </div>
  </li>
</ul>

【问题讨论】:

  • 您能否给我们一个指向导航无法按预期工作的 Wordpress 页面的链接?小提琴看起来不错,所以我不知道我们能提供什么帮助。
  • 是的,问题不在于我无法创建它。我只是不知道如何将它翻译成一个工作 wordpress 类型的菜单。我想使用的站点是:msg.utwente.nl/wordpress

标签: php wordpress materialize


【解决方案1】:

我终于设法做到了,而不是使用 wp_nav_menu 和助行器,而是使用 wp_get_nav_menu_items。

我的代码,如果有人感兴趣的话:

<?php

$menu_name = 'Side-Nav'; //Name as shown in Appearance -> Menus

if ( ($menu = wp_get_nav_menu_object( $menu_name ) ) && ( isset($menu) ) ) {
  $menuitems = wp_get_nav_menu_items($menu->term_id);
  ?>

  <ul class="collapsible collapsible-accordion">
    <?php
    $count = 0;
    $submenu = false;
    foreach( $menuitems as $item ):
        $link = $item->url;
        $title = $item->title;
        // item does not have a parent so menu_item_parent equals 0 (false)
        if ( !$item->menu_item_parent ):
        // save this id for later comparison with sub-menu items
        $parent_id = $item->ID;
    ?>

    <li>
      <a class="collapsible-header"><?php echo $title; ?></a>
      <div class="collapsible-body">
        <ul>
          <li><a href="<?php echo $link; ?>">
            <?php echo $title; ?>
        </a></li>
    <?php endif; ?>

        <?php if ( $parent_id == $item->menu_item_parent ): ?>
                <li>
                    <a href="<?php echo $link; ?>"><?php echo $title; ?></a>
                </li>

            <?php if ( $menuitems[ $count + 1 ]->menu_item_parent != $parent_id && $submenu ): ?>
            </ul>
            <?php $submenu = false; endif; ?>

        <?php endif; ?>

    <?php if ( $menuitems[ $count + 1 ]->menu_item_parent != $parent_id ): ?>
    </li>                           
    <?php $submenu = false; endif; ?>

<?php $count++; endforeach; }?>

【讨论】:

    猜你喜欢
    • 2017-09-13
    • 1970-01-01
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    • 2017-05-29
    • 2018-09-06
    • 1970-01-01
    • 2017-08-29
    相关资源
    最近更新 更多