我想限制我的网站,除了一个特定的页面。这是我的解决方案:
function restrict_access_if_logged_out(){
global $wp;
if (!is_user_logged_in() && !is_home() && ($wp->query_vars[\'pagename\'] != \'name-of-page\') ){
$redirect = home_url() . \'/wp-login.php?redirect_to=\' . esc_url($_SERVER["HTTP_HOST"] . urlencode($_SERVER["REQUEST_URI"]));
wp_redirect( $redirect );
exit;
}
}
只有我添加了以下内容:
&& ($wp->query_vars[\'pagename\'] != \'name-of-page\')
in IF子句和全局变量
$wp
用于排除特定页面。当页面为“页面名称”时,此方法避免重定向。
我的灵感here.
感谢@PieterGoosen在your post. :)