wp_nav_menu_items 修改导航菜单项目的 HTML 内容

文 / @WordPress主题

功能概述

这是一个修改导航菜单HTML列表内容的函数。

函数参数

参数 数据类型 描述
$items 字符串 菜单项目的HTML列表内容。
$args stdClass 包含wp_nav_menu()的对象。

$items:(字符串)菜单项目的HTML列表内容。

$args:(stdClass)包含wp_nav_menu()的对象。

使用示例

举例来说,我们需要在导航菜单中加入一个“登录/我的帐户”链接,而且我们需要根据用户登录状态来决定如何显示此链接。直接在WordPress后台菜单管理页面添加这个链接是不可行的。但是,通过本文所介绍的Filter,我们可以用下面的代码来实现此功能。

add_filter('wp_nav_menu_items',function($items,$args)
{
    if(is_user_logged_in()){
        $items.='<li><a href="'.home_url('account').'">MyAccount</a></li>';
    }else{
        $items.='<li><a href="'.home_url('login').'">Login</a></li>';
    }

    return$items;
},10,2);

不仅可以添加菜单链接,我们还可以根据需要修改菜单项目的HTML内容,这样可以输出我们所需的菜单。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。