我有以下代码将我的WordPress注销用户重定向到/ login /
页<?php
if (!is_user_logged_in()) {
if ( ! is_page( 'register-member' ) )
if ( ! is_page( 'groups' ) ){
wp_redirect( 'https://members.google.com/login/');
exit;
}
} ?>
当前,我将/ register-member /和/ groups /列入了白名单,因此注销的用户可以访问它们。
但是我正尝试将更多页面列入白名单,但该页面无法正常工作,我认为该主题已被主题(BuddyPress)覆盖
我也在使用“ Restrict Content Pro”插件
所以我正在寻找将其他页面列入白名单的解决方案。
答案 0 :(得分:0)
您可以使用is_user_logged_in()
和is_front_page()
做这些事情。如果不正确,则可以使用wp_redirect()
将用户重定向到主页。
假设您的忘记密码页面是一个“页面”,那么您也可以在逻辑中使用is_page()
。
您需要将其挂接到动作,以便它触发得足够晚以允许检查页面,但触发得足够早仍可以安全地重定向用户(即在发送标题之前)。 template_redirect
是最理想的选择。
add_action( 'template_redirect', 'my_frontpage_redirect' );
function my_frontpage_redirect() {
if ( ! is_user_logged_in() ) {
if ( ! is_front_page() && ! is_page( 'my-password-reset' ) ) {
wp_redirect( home_url() );
exit();
}
}
}