前端用户和管理员的自定义登录表单

时间:2014-09-25 作者:bhagyashree

我在婚姻网站上工作。我已经为用户创建了登录和注册表单。为了存储信息,我创建了自定义表格。

在我的登录表单中,有两个字段EmailIDpassword.

对于其他用户,我可以检查用户是否已注册。

但是使用相同的表单如何检查用户是否为admin?

密码字段中有问题。

(成功登录后,我希望管理员重定向到一些页面,如报告和所有页面)

因此,仪表板登录和此登录必须分开

1 个回复
SO网友:Ihor Vorotnov

为什么首先要创建自定义表?有一个wp\\u usermeta表,用于存储任何类型的额外数据,以构建具有额外字段的自定义用户配置文件。

此外,您还可以连接到本机WP登录过程,并允许使用电子邮件登录。

您使用的登录方法是什么?

检查用户是否为管理员:

if ( current_user_can( \'manage_options\' ) ) {
/* A user with admin privileges */
    wp_redirect( \'YOUR_TARGET_ABSOLUTE_URL\' );
    exit;
}
但还有更好的方法,如法典所述:

function my_login_redirect( $redirect_to, $request, $user ) {
//is there a user to check?
global $user;
if ( isset( $user->roles ) && is_array( $user->roles ) ) {
    //check for admins
    if ( in_array( \'administrator\', $user->roles ) ) {
        // redirect them to the default place
        return $redirect_to;
    } else {
        return home_url();
    }
} else {
    return $redirect_to;
}
}

add_filter( \'login_redirect\', \'my_login_redirect\', 10, 3 );
这个函数很容易解释。将$redirect\\u to destination更改为您选择的一个。

结束

相关推荐

unit testing admin password

我正在为我的插件编写单元测试,我需要一个登录的用户来测试,但我在任何地方都找不到管理员密码。有人知道默认的管理员密码是什么吗?我正在扩展WP_UnitTestCase 并从https://unit-tests.svn.wordpress.org/trunk.我目前的代码:<?php require_once(\'myPlugin.php\'); class MyPluginTest extends WP_UnitTestCase{ function