我正在使用OceanWP主题创建我的网站。
我的首页上有两个菜单, 一个是顶层菜单, 另一个是主菜单。 http://prntscr.com/pofn5r
我希望顶部菜单为登录用户和注销用户显示不同的选项。
我使用了下面的代码, 这些代码放置在functions.php文件中。我还为登录和注销的用户创建了两个不同的菜单:
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' );
似乎可以为已登录的用户和已注销的用户显示不同的菜单, 但是问题在于它还会更改主菜单和顶部菜单。
prntscr.com/podv5e
我希望主菜单保持不变, 只是根据用户是登录还是注销来更改顶部菜单。
我想知道是否有一种方法可以修改代码, 使其仅影响顶部菜单而不影响主菜单?
#1【如何编辑此代码,使其仅影响wordpress网站上的顶部菜单,而不影响主菜单()】检查theme_location参数是否匹配正确的导航。
https://codex.wordpress.org/Plugin_API/Filter_Reference/wp_nav_menu_args
#2我下载了OceanWP的免费版本, 并在functions.php中有此代码
// Register navigation menus
register_nav_menus( array(
'topbar_menu'=>
esc_html__( 'Top Bar', 'oceanwp' ), 'main_menu'=>
esc_html__( 'Main', 'oceanwp' ), 'footer_menu'=>
esc_html__( 'Footer', 'oceanwp' ), 'mobile_menu'=>
esc_html__( 'Mobile (optional)', 'oceanwp' )
) );
因此, 你希望定位到” topbar_menu”
推荐阅读
- 将meta_box添加到WordPress。取消表单提交
- 如何编辑此代码,以便仅在用户登录时才更改主页上的”顶部菜单”栏,而不更改”主菜单”()
- 用Timber添加多级菜单
- 如何在WordPress内置the_title()中显示图像()
- 对于WP上已登录和已注销的用户,如何在标题菜单上使用不同的选项()
- 如何在Bootstrap中创建可滚动的列()
- 如何更改按钮的默认WordPress登录页面链接()
- 如何将导航标题菜单栏的背景颜色从一种颜色更改为两种颜色
- 将活动类添加到wordpress循环的第一项