隐藏登录用户的页面

时间:2013-11-03 08:02:00

标签: wordpress

我想做以下事情: 如果用户注销,他可以查看页面id = 10,如果用户已登录并且查看页面id = 10,则他将被重定向到页面id = 5。我尝试将以下代码添加到我的标题中,但它不起作用。

add_action( 'init', 'check_redirect_page' );
function check_redirect_page() {
if ( is_user_logged_in() && is_page( 10 ) ) {
    wp_redirect( get_permalink( 5 ) );
    exit;
}
}

1 个答案:

答案 0 :(得分:0)

尝试使用wp挂钩而不是init; WordPress在init处不会知道它是否正在处理特定页面。

add_action( 'wp', 'check_redirect_page' );

来自Conditional Tags文档:

  

警告:您只能使用条件查询标记   在WordPress中的posts_selection动作钩子( wp 动作钩子是   第一个你可以使用这些条件)。对于主题,   这意味着如果你是条件标签将无法正常工作   在functions.php的主体中使用它,即在函数之外。