如果用户未登录,我希望将他们重定向到特定页面。 所以 blog.com/welcome
因此他们可以查看此页面或 WordPress 登录页面。 我正在尝试修改这个插件 http://wordpress.org/plugins/redirect-to-login-if-not-logged-in/
add_action( 'wp', 'dmk_not_loggedin_redirect' );
function dmk_not_loggedin_redirect() {
global $pagenow;
但是我最终遇到了重定向循环。我可以使用一些帮助来阻止这种情况。
if ( ! is_user_logged_in() && $pagenow != 'wp-login.php' or 'http://www.blog.co.uk/front' )
wp_redirect( 'http://www.blog.co.uk/front' , 302 ); exit; }
最佳答案
我尝试使用操作 Hook init
但当前帖子/页面信息尚不可用。但是,template_redirect
完成了这项工作,它只作用于前端,登录和管理页面正常工作。
这里有一个带有 slug welcome
的页面,用于检查帖子使用 is_single('post-slug')
:
add_action( 'template_redirect', 'redirect_so_18688269' );
function redirect_so_18688269()
{
if( !is_user_logged_in() && !is_page( 'welcome' ) )
{
wp_redirect( site_url( 'welcome' ) );
exit();
}
}
关于php - 如果未登录,则重定向到首页 WordPress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18688269/