我编写了一个插入wordpress用户的代码,如果我尝试添加新用户,我会收到3个警告错误,如下所示:
“警告:mysql\\u real\\u escape\\u string()期望参数1是字符串,第1129行的/home/intecom/public\\html/app/wp includes/wp-db.php中给出的对象”,
“警告:第725行的isset中的偏移量类型非法或/home/intecom/public\\u html/app/wp includes/cache.php中为空”
和
“警告:array\\u key\\u exists():第725行的/home/intecom/public\\html/app/wp includes/cache.php中的第一个参数应该是字符串或整数”。
我的代码如下:
$first_name = \'my_firstname_value\';
$last_name = \'my_lastname_value\';
$trainer_email = \'[email protected]\';
$course_registered = Array
(
[0] => 2410
);
$pro_icon_status = \'1\';
$this->institute_icon[0] = \'1\';
$this->institute_name[0] = \'my_institute_name\';
$user_data = array(
\'user_login\' => $first_name,
\'user_pass\' => \'\',
\'user_email\' => $trainer_email,
\'first_name\' => $first_name,
\'last_name\' => $last_name,
\'role\' => \'trainer\'
);
$random_password = wp_generate_password(8,false);
$user_id = wp_insert_user( $user_data );
update_user_meta( $user_id, \'course_registered\',$course_registered );
update_user_meta( $user_id, \'inistitute_name\',$this->institute_name[0] );
update_user_meta( $user_id, \'inistitute_icon\',$this->institute_icon[0] );
update_user_meta( $user_id, \'trainer_icon\',$pro_icon_status );
wp_set_password($random_password, $user_id);
我的输入只是字符串(或)数组,但为什么它会说“我正在传递对象”,我不知道发生了什么。这快把我逼疯了。谁能告诉我我犯了什么错吗?提前谢谢。
更新:问题不在于“wp\\u insert\\u user”或“Update\\u user\\u meta”,实际问题在于我提供的数据,即我提供的用户名与数据库中已有的用户名相同,我得到的wp\\u错误对象如下:
WP_Error Object
(
[errors] => Array
(
[existing_user_login] => Array
(
[0] => Sorry, that username already exists!
)
)
[error_data] => Array
(
)
)
现在你能告诉我如何在前端向用户显示错误吗?