WordPress 4.8升级后,wp_NAV_MENU()字符串搜索/替换不起作用

时间:2017-07-06 作者:Zcweb

在升级到Wordpress 4.8之前,我可以在wp_nav_menu(). 我有几个网站运行4.7.5,代码正常。升级下面的代码后,什么都没做。

    <?php
    $args = array(
         \'theme_location\'  => $nav_name,
         \'container\'  => \'nav\',
         \'items_wrap\' => \'<ul>%3$s</ul>\',
         \'container_class\' => " ",
         \'echo\' => false
    );
    $nav = wp_nav_menu( $args );
    $nav = str_replace(\'<ul class="sub-menu">\', \'<div class="mobile-drop"><ul>\', $nav);
    $match = \'</ul>\'."\\n".\'</li>\';
    $nav = str_replace($match, \'</ul></div></li>\', $nav);
    echo $nav;
    ?>
现在发布4.8后,它并没有用我的类“移动拖放”替换“子菜单”。当我查看html时,我确实看到了输出的带有双引号的“子菜单”。

1 个回复
SO网友:Zcweb

我发现Wordpress增加了一个额外的空间。

<ul  class="sub-menu"> 
因此,无法正确执行搜索和替换。如果查看代码检查器(开发人员工具),则不会看到额外的空间。在查看源代码(command+shift+U)时,我注意到实际的输出代码有额外的空间。希望这能帮助有类似问题的人。

结束

相关推荐

如何在WordPress中覆盖/定制wp-admin/nav-menus.php

我想知道是否有办法定制wp管理/导航菜单。php,以便我可以添加自己的额外字段或选项卡。例如,我想为用户创建的每个菜单创建一个新选项卡(菜单设置)。我觉得如果在创建的每个菜单上都附加了特定的设置,会更加方便用户。这可能吗?目前,我正在按主题选项进行此操作,但它有局限性:(