Ale*_*lex 7 php wordpress menu
是否可以在菜单中添加某些类似"箭头"或跨度的类(在Wordpress中)?看来你可以这样做是使用javascript,但我想知道是否有PHP解决方案...
在WP 3.0中,我看到活动菜单上有"父"或"祖先"类,但这只适用于活动菜单,我也需要它用于非活动菜单
Don*_*vey 12
这个功能真的应该在WordPress核心!
无论如何,我看了一下你在另一个答案的评论中发送的菜单模板源,并找到了一个(相当hacky)方法在带有孩子的菜单项上添加一个类.它基本上是默认walker的子类,以扩展其默认行为.如果你把它放在你的主题中,这可能是最好的functions.php.这是代码:
<?php
class Arrow_Walker_Nav_Menu extends Walker_Nav_Menu {
function display_element($element, &$children_elements, $max_depth, $depth=0, $args, &$output) {
$id_field = $this->db_fields['id'];
if (!empty($children_elements[$element->$id_field])) {
$element->classes[] = 'arrow'; //enter any classname you like here!
}
Walker_Nav_Menu::display_element($element, $children_elements, $max_depth, $depth, $args, $output);
}
}
?>
Run Code Online (Sandbox Code Playgroud)
要调用它,您需要walker在调用wp_nav_menu()主题时添加参数,如下所示:
<?php
wp_nav_menu(array('walker' => new Arrow_Walker_Nav_Menu, [other arguments...]))
?>
Run Code Online (Sandbox Code Playgroud)
希望对你有用!我只是在表面上测试它,但它似乎工作.如果有任何边缘情况,添加类失败,请告诉我.