【问题标题】:How to add attributes to <li> for a particular menu item如何为特定菜单项添加属性到 <li>
【发布时间】:2016-09-29 12:53:20
【问题描述】:

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

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>

我想在&lt;li&gt; 中为该特定菜单项添加图像(无论是背景图像还是其他)。像这样的

<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>

任何帮助将不胜感激。谢谢

【问题讨论】:

    标签: wordpress menu wp-nav-walker


    【解决方案1】:

    我相信该选项在 wordpress 后端本身中可用。您需要从屏幕选项中启用“css 类”

    【讨论】:

    • 我想你还没有阅读我的问题。使用 CSS 类选项,我可以添加一个类,但如何在
    • 中添加元素或在
    • 中添加内联 css?
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      相关资源
      最近更新 更多
      热门标签