我知道这是一个问了几百万次的问题,但我找不到一个适合现在版本的Wordpress和/或我的特定情况的答案。
我有一个安装了Buddypress的Wordpress网站。
我想要那样: - 未登录的用户只能看到页面wp-login.php - 登录用户可以访问整个网站
我无法弄明白,这是不可能的。要么我更改站点地址或分配页面,或者功能...没有任何作用,一直是错误或404页面错误等...
基本上:你到达网站,你没有登录= Wp-Login.php,如果你登录页面“成员”
谢谢!
答案 0 :(得分:4)
根据您的最终目标,有很多不同的方法可以做到这一点(使用WP登录页面,自定义登录页面等等)。您可以尝试将其添加到主题的functions.php文件中:
if ( ( is_single() || is_front_page() || is_page() || is_archive() || is_tax() )
&& ! is_page( 'login' ) && ! is_page('register') && ! is_user_logged_in() ) {
auth_redirect();
}
或者您可以使用插件Force Login
<强>更新强>
理论上,你可能只是使用它,只是没有测试......
if( ! is_page('login') && ! is_page('register') && ! is_user_logged_in() ) {
auth_redirect();
}
答案 1 :(得分:4)
看看这里
https://wordpress.org/support/topic/how-to-auth_redirect-to-specific-page
"INSERT INTO admins (username,email,gender,password,adminlevel) VALUES ('$username','$email','$gender','$password','$select')";
你也可以将它添加到你的functions.php文件中,而不是我之前所说的:
<?php
if( !is_user_logged_in() ) {
wp_redirect('http://somepagehere');
exit;
}
?>
答案 2 :(得分:0)
只需使用这个wordpress插件 https://wordpress.org/plugins/restrict-user-access/ 控制谁可以/无法访问您的网站。
如果你用谷歌搜索它,你可能会获得大量类似的插件。
答案 3 :(得分:0)
您希望它检查用户当前是否正在尝试登录或注册,如果没有将其重定向到您想要的任何页面。
if ( !is_user_logged_in() && !is_page( 'login' ) && ! is_page('register') ) {
//redirect user, create account with them, do a hoola-hoop
}
请务必在get_header();
之前将此代码放在页面文件中