在 WordPress 上登录/注销时隐藏/显示菜单
Posted
技术标签:
【中文标题】在 WordPress 上登录/注销时隐藏/显示菜单【英文标题】:Hide/Show menus when logged in/out on WordPress 【发布时间】:2021-12-25 20:21:42 【问题描述】:我的网站是用 WordPress 构建的,我目前有 3 个导航菜单
-
主菜单 - “Main”
二级顶部菜单 - “玩家登录”
另一个二级顶部菜单 - “玩家已注销”
我已将以下脚本添加到我的 functions.php 中
function my_wp_nav_menu_args( $args = '' )
if( is_user_logged_in() )
$args['menu'] = "Player Logged-in";
else
$args['menu'] = "Player Logged-out";
return $args;
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );
它正在工作,唯一的问题是它用一个二级菜单替换了我的“主”菜单。 如果我希望在用户登录/退出时交替使用 2 个二级顶部菜单,并且无论用户是否登录,我都希望“主”菜单保持不变,我该怎么做?
谢谢
【问题讨论】:
【参考方案1】:我遇到了这个问题。 我为我的主题(Avada)寻找了特定的菜单位置(top_navigation)并使用了这个
function wpc_wp_nav_menu_args( $args = '' )
if( is_user_logged_in())
if( 'top_navigation' == $args['theme_location'] )
//top_navigation is specific to Avada in my case
$args['menu'] = 'Player Logged-in';
else
if( 'top_navigation' == $args['theme_location'] )
//again, top_navigation is specific to Avada in my case
$args['menu'] = 'Player Logged-out';
return $args;
add_filter( 'wp_nav_menu_args', 'wpc_wp_nav_menu_args' );
【讨论】:
以上是关于在 WordPress 上登录/注销时隐藏/显示菜单的主要内容,如果未能解决你的问题,请参考以下文章
用户登录并重定向到主页后,如何在主页导航栏中隐藏登录链接并显示注销链接?
SwiftUI 在使用 Firebase 单击注销时隐藏 TabView