我将arguments数组传递给标题, 如下所示:
<nav class="header__social-menu">
<?php
$args = array(
'theme_location' => 'social-menu', 'container' => 'ul', 'container_class' => 'header__social-list', 'link_before' => '<li class="header__social-item"><a href="#" class="header__social-link">', 'link_after' => '</a></li>', );
wp_nav_menu( $args );
?>
</nav>
但是, 作为ul元素的容器没有获得分配给它的类” header__social-list”, 而是得到了” menu”类。
是否有可能为了遵循BEM方法而实际更改容器的类别?
#1
我可以通过添加另一个参数” menu_class”来解决它, 因此代码现在看起来像这样:
<nav class="header__social-menu">
<?php
$args = array(
'theme_location' => 'social-menu', 'container' => 'ul', 'container_class' => 'header__social-list', 'menu_class' => 'header__social-list', 'link_before' => '<li class="header__social-item"><a href="#" class="header__social-link">', 'link_after' => '</a></li>', );
wp_nav_menu( $args );
?>
</nav>
不知道我是否应该将” container_class”参数保留在那里, 但是它正在与” menu_class”一起使用。
#2
这是wordpress文档中有关菜单容器参数的内容:
‘container'(字符串)是否包装ul, 以及包装什么。默认为” div”。
因此, 这是包装已经生成的ul, container_class用于该包装, 而不是ul本身。
但是你可能想改用items_wrap:
‘items_wrap'(字符串)应该如何包装列表项。默认值为带有ID和类的ul。使用带编号占位符的printf()格式。
另请参阅https://developer.wordpress.org/reference/functions/wp_nav_menu/
评论前必须登录!
注册