如果您的主题包含一个标题钩子,那么您可以简单地在该区域中钩子一个新的小部件,并包含登录用户的条件标记,该标记只显示带有所需链接的自定义菜单小部件。
<?php
if ( is_user_logged_in() ) {
wp_nav_menu( array( \'theme_location\' => \'logged-in-menu\' ) );
} else {
wp_nav_menu( array( \'theme_location\' => \'logged-out-menu\' ) );
}
?>
您可以直接在标题中使用上面的代码。php文件或删除php标记,并将其包含在具有特定主题挂钩(如果有)的自定义函数中,然后在子主题函数文件中使用它。
另一个选项是创建一个新的小部件区域,并使用小部件可见性或另一个条件小部件,它允许您将条件直接添加到小部件中。
如果您可以提供特定于主题的头挂钩,那么我可以提供创建新小部件区域的代码。
来源http://codex.wordpress.org/Function_Reference/wp_nav_menu
function wpsites_register_header_widget() {
register_sidebar( array(
\'name\' => \'Header Widget\',
\'id\' => \'header-widget\',
\'before_widget\' => \'<div>\',
\'after_widget\' => \'</div>\',
) );
}
add_action( \'widgets_init\', \'wpsites_register_header_widget\' );
add_filter( \'your_themes_header_hook\', \'wpsites_header_widget\' );
function wpsites_header_widget() {
if ( is_user_logged_in() && is_active_sidebar( \'header-widget\' ) ) {
dynamic_sidebar(\'header-widget\', array(
\'before\' => \'<div class="header-widget">\',
\'after\' => \'</div>\',
) );
}
}
拖入一个自定义菜单小部件,即可完成设置。