我正在尝试构建一个功能,该功能在成员在我的网站上注册时运行。
我正在使用简单的LDAP登录插件构建一个外联网,以使用我的LDAP目录,这样用户就可以使用他们用于LDAP帐户的凭据在外联网上进行连接。
遗憾的是,在我的LDAP目录中,没有允许我填写我的WordPress用户配置文件的“first\\u name”和“last\\u name”字段的字段。因此,由于电子邮件地址的构成必须如下所示:[email protected]
, 此函数用于剪切电子邮件地址,以便我可以在表中检索名字和姓氏,然后填写first_name
和last_name
WordPress用户的字段wp_update_user()
;
当用户第一次登录时,他们实际上在我的WordPress站点上没有帐户。当连接到extranet查询LDAP目录时,就会创建帐户。这就是为什么我想用user_register
动作钩;
我的职能是functions.php
.
功能如下:
add_action( \'user_register\', \'fill_identity\' );
function fill_identity(){
global $current_user;
wp_get_current_user();
get_currentuserinfo();
$mail_user=$current_user->user_email;
$mail_user = substr($mail_user,0,-14);
$mail_user = explode(".", $mail_user);
$prenom = $mail_user[0] = ucfirst($mail_user[0]);
$nom = $mail_user[1] = ucfirst($mail_user[1]);
var_dump($mail_user);
wp_update_user([
\'ID\' => $current_user->ID,
\'first_name\' => $prenom,
\'last_name\' => $nom,
]);
}
但当有人在我的网站上注册时,一切都不会改变。我已测试运行
fill_identity()
来自的函数
header.php
这个函数运行得很好,这是我如何知道问题不是我的函数而是
add_action
. 我试过其他的动作,但都没用。
我对自己写钩子不太熟悉,这是我第一次写钩子。然而,我的functions.php
包含了很多我为其他一些功能找到的功能,而且效果很好。
你有什么主意吗?