从注册表添加额外的WordPress用户信息

时间:2019-01-24 作者:Speedy

我正试图从wordpress注册表中添加一些额外的用户配置文件信息。但只添加了标准的wordpress用户信息。仅使用wp\\U insert\\U user是否可以执行此操作,或者我是否需要为wp\\U update\\U user添加额外功能?

非常感谢。(我是一个非常初学者,如果这是显而易见的,那么很抱歉)

    function crm_wp_insert_user() {
      if ( isset($_POST[\'crm_customer_submitted\'] ) ) {

      $firstname   =   sanitize_user( $_POST[\'firstname\'] );
      $lastname   =   sanitize_user( $_POST[\'lastname\'] );
      $project   =   sanitize_user( $_POST[\'project\'] );
      $email      =   sanitize_email( $_POST[\'email\'] );
      $phone      =   sanitize_user( $_POST[\'phone\'] );   
      $address      =   sanitize_user( $_POST[\'address\'] );       


    $user_data = array(
        //\'ID\' => \'\',
        \'user_pass\' => wp_generate_password(),
        \'user_login\' => $email,
        \'user_nicename\' => $firstname,
        \'user_url\' => \'\',
        \'user_email\' => $email,
        \'display_name\' => $firstname,
        \'nickname\' => $firstname,
        \'first_name\' => $firstname,
        \'last_name\' => $lastname,
        \'description\' => $project,
        \'phone\' => $phone,  
        \'address\' => $address,      
        \'user_registered\' => $date,
        \'role\' => crm_client // Use default role or another role, e.g. \'editor\'
    );
    $user_id = wp_insert_user( $user_data );
      }

}
add_action( \'admin_init\', \'crm_wp_insert_user\' );

1 个回复
最合适的回答,由SO网友:Er Deepak Prabhakar 整理而成

您可以使用UserMetaWordPress函数为用户添加额外信息,下面的代码将帮助您


function crm_wp_insert_user() {
  if ( isset($_POST[\'crm_customer_submitted\'] ) ) {

  $firstname   =   sanitize_user( $_POST[\'firstname\'] );
  $lastname   =   sanitize_user( $_POST[\'lastname\'] );
  $project   =   sanitize_user( $_POST[\'project\'] );
  $email      =   sanitize_email( $_POST[\'email\'] );
  $phone      =   sanitize_user( $_POST[\'phone\'] );   
  $address      =   sanitize_user( $_POST[\'address\'] );       


$user_data = array(
    //\'ID\' => \'\',
    \'user_pass\' => wp_generate_password(),
    \'user_login\' => $email,
    \'user_nicename\' => $firstname,
    \'user_url\' => \'\',
    \'user_email\' => $email,
    \'display_name\' => $firstname,
    \'nickname\' => $firstname,
    \'first_name\' => $firstname,
    \'last_name\' => $lastname,    
    \'user_registered\' => $date,
    \'role\' => crm_client // Use default role or another role, e.g. \'editor\'
);
$user_id = wp_insert_user( $user_data );

//Below function will add extra details to user
add_user_meta($user_id,\'description\',$project);
add_user_meta($user_id,\'phone\',$phone);
add_user_meta($user_id,\'address\',$address);

  }
} add_action( \'admin_init\', \'crm_wp_insert_user\' );

相关推荐

如何让`wp-list-table`显示我在Custom-Post中的`Custom-Fields`

一切都好吗<我需要wp-list-table 也要显示custom-fields 在每个custom-post 我有,但我不知道如何做到这一点,在这幅图中,它显示了带有字段的表格:Title, Author and Publication Date: 我想要的是能够选择custom-fields 将出现,例如以下示例Title, Carta, Naipe, Author, and Date of Publication: