如何为特定菜单项的<li>添加属性

时间:2016-09-27 15:02:56

标签: wordpress menu wp-nav-walker

我正在使用菜单描述为具有以下功能的菜单项添加图像

function call_desc_with_div( $item_output, $item, $depth, $args ) {
    if ( !empty( $item->description ) ) {
       $item_output = '<img src="' . $item->description . '">';
       }
    return $item_output;
}
add_filter( 'walker_nav_menu_start_el', 'call_desc_with_div', 10, 4 );

然而,HTMl标记就像这样

<li id="menu-item-12345" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-12345"><img src="http://my-image.png"></li>

我想在<li>内为该特定菜单项添加图像(无论是背景图像还是其他图像)。像这样的东西

<li id="menu-item-12345" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-12345" style="background-image:url(http://my-image.png);"></li>

任何帮助都会受到赞赏。感谢

2 个答案:

答案 0 :(得分:0)

我相信这个选项在wordpress后端本身可用。你需要从屏幕选项中启用“css classes”

答案 1 :(得分:0)

可以在后端添加项目描述到该菜单项,例如:desc和 像这样检查

$p = $item->description
if( $p =='desc') {
$output .= $indent . '<li class="class1">';
}else {
 $output .= $indent . '<li>';  
}