使用下面的代码,我尝试更新用户的电子邮件地址。$\\u POST是正确的,但数据未保存到wp\\u users表中。
$user_id = $_POST[\'ID\']; // correct ID
wp_update_user( $user_id, \'user_email\', $_POST[\'user_email\']); // correct email address
也成功地尝试了这一点:
wp_update_user( array( $user_id, \'user_email\', $_POST[\'user_email\']) );
此更新有什么问题?
最合适的回答,由SO网友:bueltge 整理而成
该函数需要一个包含参数的数组。看见The Codex.此外,还可以将参数映射为值:ex。\'user_email\' => $_POST[\'user_email\']
.
在您的示例中,代码如下所示:
$user_id = (int) $_POST[ \'ID\' ];
wp_update_user( array(
\'ID\' => $user_id,
\'user_email\' => $_POST[ \'user_email\' ]
) );
还有一个重要提示:您应该验证数据。尤其是来自
$_POST
大堆也许您正在这样做,但它不在您的示例源代码中。