如何在wordpress ul容器周围添加div

CK-*_*iot 5 wordpress menu function html-lists

Wordpress在这个ul标签内输出我的子菜单......

<ul class="sub-menu">
Run Code Online (Sandbox Code Playgroud)

我怎么能包围一个简单的div呢?

最好通过functions.php来实现,但jquery也可以.

mai*_*o84 17

虽然使用类似jQuery的东西来包装你的子菜单会很容易,但是为此目的使用jQuery并不是一个好习惯.把它放在functions.php中:

class Child_Wrap extends Walker_Nav_Menu
{
    function start_lvl(&$output, $depth = 0, $args = array())
    {
        $indent = str_repeat("\t", $depth);
        $output .= "\n$indent<div class=\"custom-sub\"><ul class=\"sub-menu\">\n";
    }
    function end_lvl(&$output, $depth = 0, $args = array())
    {
        $indent = str_repeat("\t", $depth);
        $output .= "$indent</ul></div>\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

我假设你的菜单是在你的标题中生成的,所以转到header.php(或任何使用wp_nav_menu函数的文件)并查找以"wp_nav_menu"开头的任何内容.

由于我没有任何代码可以查看,我只能猜测它正在使用的参数(如果有的话).如果它看起来完全像"wp_nav_menu()",括号之间没有任何内容,则将其更改为以下内容:

wp_nav_menu(array('walker' => new Child_Wrap()))
Run Code Online (Sandbox Code Playgroud)

否则,请使用您的菜单使用的代码编辑您的问题,以便我可以进一步帮助您.