首页 > 解决方案 > 用户在 wp 数据库中插入数据后尝试进行更新

问题描述

我想在用户注册后或插入后更新 WP 数据库中的列。

我现在正在尝试获取要在 where 子句中使用的最后插入的 ID,并更新其值来自 url 的列。

if ( empty( $userdata['user_login'] ) ) {
    $part_of_email          = explode( '@', $userdata['user_email'] );
    $username               = check_username( $part_of_email[0] );
    $userdata['user_login'] = $username;
}
global $wpdb;
$user_id = wp_insert_user( $userdata ); // Insert user data in users table.
    $lastid = $wpdb->insert_id;
//$table_name  = $wpdb->prefix."users";
$where = array('ID' => $lastid );
$subs = array('refID'=> $_GET['ref']);
$wpdb->update('users', $subs, $where);

标签: phpwordpress

解决方案


您可以使用 update_user_meta 函数。

// Will return false if the previous value is the same as $new_value.
$updated = update_user_meta( $user_id, 'refID', $_GET['ref']  );

推荐阅读