如果用户已登录,我想相应地更改项目的菜单标签。 如果用户未登录,我想显示登录,如果用户是管理员,我想显示管理员页面,如果普通用户登录,我想显示我的个人资料页面。
我试过这段代码。
add_filter( 'wp_nav_menu_items', 'dynamic_label_change', 10, 2 );
function dynamic_label_change( $items, $args )
{
if (!is_user_logged_in() && $args->theme_location == 'topbar_navigation')
{
$items = str_replace("Login", "Profile", $items);
}
return $items;
}
答案 0 :(得分:0)
如果你想添加新的菜单项,那么下面的代码将有所帮助。
// Add Login / Logout menu item dynamically to primary navigation menu
function custom_menu_links( $items, $args ) {
if ($args->theme_location == 'primary'){
if (is_user_logged_in()) {
$items .= '<li><a href="'. wp_logout_url(home_url()) .'">Logout</a></li>';
} else {
$items .= '<li><a href="'. site_url('wp-login.php') .'">Login</a></li>';
}
}
return $items;
}
add_filter( 'wp_nav_menu_items', 'custom_menu_links', 10, 2 );