首页 > 解决方案 > WordPress菜单如何将一个类添加到仅父元素?

问题描述

我只想将类下拉列表添加到父元素。我试图向functions.php添加一些代码,但这并没有解决我的问题。可以用 jquery/js 做到这一点吗?

<nav class="container_menu">
    <ul class="reset">
        <li class="active "><a title="Home" href="/" class="class here">Home</a></li>

        <li class="menu "><a title="parent" href="/parent" class="class here">parent</a>
            <ul class="reset">
                <li class=""><a title="child1" href="/child/child1">child 1</a></li>
                <li class=""><a title=child2" href="/child/child2">Child 2</a></li>
            </ul>
        </li>

    </ul>
</nav>

标签: jquerywordpressmenuparentnav

解决方案


您可以使用nav_menu_link_attributes过滤器来修改<a>属性。

对于您的情况,您可以使用以下代码:

function add_classname_to_parent_nav_link($atts, $item) {

    // add class only on parent
    if($item->menu_item_parent == 0) {
        $atts['class'] = 'your-class-name';
    }   
    return $atts;   
}
add_filter('nav_menu_link_attributes', 'add_classname_to_parent_nav_link', 10, 2);

推荐阅读