2

如果用户未登录,我希望将用户重定向到特定页面。所以 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; }
4

1 回答 1

2

我尝试使用动作挂钩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();
    }
}
于 2013-09-08T21:22:44.730 回答