将用户重定向到登录页面

时间:2014-06-16 作者:Berke Cagkan Toptas

我创建了一个如下所示的模板页面,以检查用户是否登录。若用户未登录,我希望将用户重定向到第一个登录页面,登录后我希望他重定向上一个页面。

使用下面的代码,登录重定向功能在用户登录后再次重定向到登录页面。如何修复该代码?

在“我的模板”页面中:

    <?php
    if(!is_user_logged_in()) 
    {   
      wp_redirect( \'http://....../wp-login.php\', 302 );
    }
    else
    {   
      wp_redirect(\'----------otherpage---\',302 );
      exit;
    }
    ?>
在函数中。php:

    function directtorequest( $redirect_to, $request, $user )
    {
        // instead of using $redirect_to we\'re redirecting back to $request
        return $request;
    }
    add_filter(\'login_redirect\', \'directtorequest\', 10, 3);

1 个回复
最合适的回答,由SO网友:ksr89 整理而成

添加redirect_to 作为链接中的查询变量,无论何时重定向用户wp-login.php. 喜欢

wp_redirect(\'http://...../wp-login.php?redirect_to=your_previous_page_link\', 302);
在中redirect_to 编写任何页面的链接。

结束

相关推荐

How to override wp-login.php

我想覆盖默认WordPress登录页:wp-login.php.原因是,我想在文件的顶部编写一些自定义代码,检查后端的一些条件,并执行诸如将用户重定向到其他页面之类的操作。我想这样做是因为我想在自定义文件中执行自己的身份验证逻辑,而不显示默认的WordPress登录表单。我的逻辑包括解析一些cookie和会话数据(特别是没有登录表单,可能是自定义表单)。我真的想把我的逻辑写在header.php 子主题的文件,但不幸的是wp-login.php 文件不包括主题的头文件。我不想编辑wp-login.php