我真的很绝望,几天来一直在寻找解决方案。
我需要实现:仅限登录用户的访问不需要将登录用户重定向到自定义登录页面
我正在进行多站点设置
目前最接近的解决方案是以下代码,但它只保护1个页面,在这种情况下,它是主页(e-mover.ch/distributor),因为多站点使用子文件夹,所以主url是e-mover。总承包商/分销商。因此,如果有人要访问此url,他将看到自定义登录页面(haendler登录),但他可以忽略它,只需点击其中一个菜单项即可访问。我需要整个网站限制登录用户,我希望他们使用自定义登录页面,这是“汉德勒登录”。
我尝试了一些插件,但当使用自定义登录插件和受限访问插件组合使用时,我总是遇到重定向循环错误。这就是为什么我在寻找“非插件”解决方案。
欢迎任何帮助。
这是我能得到的最接近的结果:
if ( !is_user_logged_in() ) {
$url_uri = $_SERVER[\'REQUEST_URI\'];
//redirect shop page.
if ( $url_uri == \'/distributor/\' ) {
wp_redirect( home_url( \'/haendler-login\' ) );
}
}
啦啦队标志
SO网友:Kevin Vess
如果您愿意尝试其他插件,我建议使用Force Login. 这是一个简单的轻量级插件,需要所有访问者登录。
插件安装并激活后,将以下代码添加到函数中。更改站点登录URL以指向自定义登录页面的php文件:
function my_login_page( $login_url, $redirect ) {
return site_url( \'/haendler-login/?redirect_to=\' . $redirect );
}
add_filter( \'login_url\', \'my_login_page\', 10, 2 );