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

评分:
评分 0, 满分 5 星
0

函数描述

修改导航菜单的HTML列表内容。

函数参数

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

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

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

使用示例

假如,我们需要添加一个「登录/我的账户链接」到导航菜单,因为我们要根据用户登录状态判断显示的菜单链接,直接在后台菜单管理页面中添加肯定是无法实现的。通过本文介绍的 Filter,我们可以通过下面的代码实现此功能。

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

    return $items;
}, 10, 2);

除了添加菜单项目,我们还可以根据需要,修改菜单项目的 HTML,来输出我们需要的菜单内容。

本站提供 WordPress主题定制开发服务

本站长期承接 WordPress主题、插件、基于 WooCommerce 的商店商城开发业务。 我们有 8 年WordPress开发经验,如果你想 用WordPress开发网站, 请联系 QQ: 470266798,或邮箱: 4626395@gmail.com 咨询。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*