Problem with login form

时间:2014-03-02 作者:user48394

我继承的网站的登录表单有问题,只有某些用户在登录后才会被发送到正确的页面。在这个网站上,拥有帐号的用户可以进入一个特殊区域。这些帐户都是访问权限非常有限的普通WordPress用户帐户。

为了访问站点的这个特殊区域,用户必须使用登录表单。登录表单似乎基于以下代码来定制wp admin登录:

if ( ! is_user_logged_in() ) { // Display WordPress login form:
    $args = array(  
        \'redirect\' => admin_url(),  
        \'form_id\' => \'loginform-custom\',  
        \'label_username\' => __( \'Username custom text\' ),  
        \'label_password\' => __( \'Password custom text\' ),  
        \'label_remember\' => __( \'Remember Me custom text\' ),  
        \'label_log_in\' => __( \'Log In custom text\' ),  
        \'remember\' => true  
    );  

    wp_login_form( $args );  
} else { // If logged in:
    wp_loginout( home_url() ); // Display "Log Out" link.  
    echo " | ";  
    wp_register(\'\', \'\'); // Display "Site Admin" link.  
}
从此页:https://codex.wordpress.org/Customizing_the_Login_Form

几乎所有的事情都如你所料。如果您已经登录并单击我们的登录链接,您将被踢到/foo/. 问题是:如果你还没有登录,登录后你仍然会被踢到/foo/bar/. 但是,在此登录的管理员帐户将被正确地踢到/foo/.

到目前为止,我已经跑了grep -rl "/foor/bar" /wordpress/site/path 查找此路径的任何剩余引用,但它们都只是按钮和超链接。我对这方面相当陌生;我有什么明显的缺失吗?

1 个回复
SO网友:Dylan

我会检查一下login_redirect filter 没有在您的函数中使用。php文件。如果在主题中搜索“/foo/bar”路径没有返回任何结果,那么Peter\'s Login Redirect 可能正在使用,并且可能会将路径存储在数据库中。

结束