【问题标题】:get the label name from wordpress从 wordpress 获取标签名称
【发布时间】:2015-10-27 15:25:30
【问题描述】:

我想从列表项中获取 label'name 的值,并将其放入属性 data-menuanchor=""。

像这样:

 <li><a href="#home"> get this ==>Home<== get this </a></li>

       ==>   Place it here      <==
<li><a ==>data-menuanchor="Home"<== href="#Home">Home</a></li>

并为每个列表项执行此操作:

<li><a data-menuanchor="Home" href="#Home">Home</a></li>
<li><a data-menuanchor="Contacts" href="#Contacts">Contacts</a></li>
<li><a data-menuanchor="AboutUs" href="#AboutUs">AboutUs</a></li>

我已经有一个临时编写的函数,但我必须手动添加每个部分,如下所示:

add_filter( 'nav_menu_link_attributes', 'my_nav_menu_attribs', 10, 4 );

function my_nav_menu_attribs( $atts, $item, $args )
{
 // The ID of the target menu item
 $Home = 18; //menu ul li ==> id target
 $Contacts = 17; 


// inspect $item

if ($item->ID == $Home) {
$atts['data-menuanchor'] = 'Home';
}

elseif ($item->ID == $Contacts) {
$atts['data-menuanchor'] = 'Contacts';
}
return $atts;
}

【问题讨论】:

    标签: php jquery html wordpress function


    【解决方案1】:

    您可以使用.attr() 设置属性值,并使用一个函数作为第二个参数,以便为每个锚点调用它

    但是您只需要定位菜单内的锚点,因此假设您有一个分配给 ul 的类(在下面的代码中假设 mymenuclass 是分配给 ul 的类)

    $('.mymenuclass a').attr('data-menuanchor', function () {
        return $.trim($(this).text());
    })
    

    【讨论】:

    • ul 类是.menu,试试这个:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 2011-03-19
    相关资源
    最近更新 更多