如果用户已连接,则更改菜单 - WordPress

时间:2017-04-25 19:03:13

标签: wordpress

我正在使用WordPress。

我有两个不同的菜单。

如果用户登录,则菜单会更改。 所以第一个只适用于没有连接的用户。

你知道解决办法吗?

我是否要更改一些PHP文件?

修改问题 在我的网站上,我有一个后台办公室。在BO上有菜单-2。

我怎么能把菜单2只放在后台办公室?并在原始网站上有其他菜单(菜单1)?

1 个答案:

答案 0 :(得分:1)

您需要功能is_user_logged_in()

解决问题的最短路径是创建两个不同的菜单,一个用于登录用户,另一个用于“来宾”。

转到外观»菜单,创建登录和注销的两个菜单。

创建菜单后,将此代码添加到主题的functions.php文件或特定于站点的插件中:

function my_wp_nav_menu_args( $args = '' ) {

if( is_user_logged_in() ) { 
    $args['menu'] = 'logged-in';
} else { 
    $args['menu'] = 'logged-out';
} 
    return $args;
}
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );

参考:

1。https://developer.wordpress.org/reference/functions/is_user_logged_in/