Wordpress创建帐户并将用户信息复制到另一个数据库

时间:2016-07-12 13:54:29

标签: php wordpress woocommerce phalcon

我正在使用woocommerce,客户必须登录或创建一个帐户才能购买。当他们创建帐户时,我需要获取密码以将密码发送到我的Web服务并为我的其他数据库创建新用户。

此数据库用于我的Web应用程序,我必须使用phalcon hash method加密密码,但我不能这样做,因为wordpress密码已经过哈希。

我该怎么办呢?

1 个答案:

答案 0 :(得分:1)

有一种方法可以做到这一点。每当用户登录时,您都可以访问用户的普通密码,但当然无法以递归方式获得所有密码。我不认为这会产生任何问题,因为功能将对记录的用户不间断地起作用。

您需要创建一个名为hookwp_authenticate_user

add_filter('wp_authenticate_user', 'myplugin_auth_login',10,2); 
// Where $priority is 10, $accepted_args is 2.

function myplugin_auth_login ($user, $password) {

     $user_id = $user->ID;
     // check if passsword is already converted
     $phalcon_hash = get_user_meta( $user_id, 'phalcon_hash' );

     if($phalcon_hash == false) {
      // convert your password with 
      $phalcon_password = use_your_phalcon_hash_method($password);
      // connect your other db and save pass
      send_your_user_info_to_other_db($user_id, $phalcon_password);
      // set user meta as converted
      add_user_meta( $user_id, 'phalcon_hash', true);
     }
}