Php Wordpress-用户注册时向数据库添加自定义字段

Php Wordpress-用户注册时向数据库添加自定义字段,php,wordpress,hash,login,Php,Wordpress,Hash,Login,我在数据库中的wp\u user表中创建了另一列,并尝试以不同的散列方式存储密码,以用作另一个应用程序的凭据 password_hash($password, PASSWORD_DEFAULT); 在对输入字段数据进行散列之前,我应该在哪里添加代码以使用输入字段数据 在用户注册之前添加此命令非常重要,因为我需要使用用户输入字段中的原始密码wordpress有一个名为动作挂钩的操作挂钩,在用户插入数据库后立即触发 来自 你的功能呢 function myplugin_registration_s

我在数据库中的
wp\u user
表中创建了另一列,并尝试以不同的散列方式存储密码,以用作另一个应用程序的凭据

password_hash($password, PASSWORD_DEFAULT);
在对输入字段数据进行散列之前,我应该在哪里添加代码以使用输入字段数据


在用户注册之前添加此命令非常重要,因为我需要使用用户输入字段中的原始密码

wordpress有一个名为动作挂钩的操作挂钩,在用户插入数据库后立即触发

来自

你的功能呢

function myplugin_registration_save( $user_id ) {

   if ( isset( $_POST['first_name'] ) )
        update_user_meta($user_id, 'first_name', $_POST['first_name']);

}
编辑I

注释后:首先-您可以在任何时候使用其他方法散列或更改密码-但我不会讨论这个问题,因此如果您需要一些早期操作,您可以使用这些操作来操作表单本身,或者,您可以使用在筛选之前操作或处理来自用户注册的post数据,这取决于您也可以使用的场景

所有这些额外功能都链接在
user\u register
codex页面中

编辑II

评论后:

我想我应该编辑注册表,具体是哪个文件

从不编辑核心文件

这是一个更糟糕的实践,一个开发人员可以这样做,原因很多,我甚至不能在这里列举。 这正是制作挂钩/过滤器的原因

如果你已经知道,那么就使用它们,如果你不知道,你可以阅读更多

在本例中,hook
register\u form
正好用于操作表单,您可以在不接触核心文件的情况下更改表单

编辑III

请同时检查函数:这允许更改默认哈希算法

if ( !function_exists('wp_hash_password') ){
    function wp_hash_password($password) {
                //your own hashing algorithm here
            return $password;
    } }
如果你这样做,你也需要改变


它是无用的,因为在将用户插入数据库后,我无法检索原始密码。我需要准确地执行此操作,当用户以不同的方式注册以散列原始密码时。例如,用户在注册期间输入12345678作为密码,它会像数据库中的某个字符串一样散列,我如何准确地再次散列原始密码?!我想我应该编辑register\u form,到底是哪个文件?我想答案是register\u form和register\u post thanks无问题和快乐编码:-),请参阅
edit III
,以了解有关您的场景的更多信息,这些信息可能对您有用
if ( !function_exists('wp_hash_password') ){
    function wp_hash_password($password) {
                //your own hashing algorithm here
            return $password;
    } }
if ( !function_exists('wp_check_password') ){
    function wp_check_password($password, $hash, $user_id = '') {
            // do you hash checking
            return apply_filters('check_password', $check, $password, $hash, $user_id);
            }
}