使用MySQL查询创建WordPress用户

时间:2019-06-07 13:17:17

标签: mysql wordpress

尝试通过运行查询直接通过MySQL创建新的WordPress用户。我一直看到错误消息弹出窗口:

1292-错误的日期时间值:第1行的“ user_registered”列的“ 0000-00-00 00:00:00”

如何包含缺失的内容?

INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_status`)
VALUES ('adminuser2', MD5('adminuser2password'), 'adminfirstname adminlastname', 'adminuser2@mywebsite.com', '0');

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) 
VALUES (NULL, (Select max(id) FROM wp_users), 'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) 
VALUES (NULL, (Select max(id) FROM wp_users), 'wp_user_level', '10');

1 个答案:

答案 0 :(得分:0)

遵循此语法,这是在使用WordPress时插入数据的推荐方法

$wpdb->insert( $table_name, array('column_name_1'=>'hello', 'other'=> 123), array( '%s', '%d' ) );

定义一个变量: $blogtime = current_time( 'mysql' );然后在您的查询中添加“ user_registered”列

$wpdb->insert( 'wp_users' , array(
    'user_login' => 'adminuser2',
    'user_pass'  => MD5('adminuser2password'),
    'user_nicename'=> 'adminfirstname adminlastname',
    'user_email'=> 'adminuser2@mywebsite.com',
    'user_status'=> '0',
    'user_registered'=> '$blogtime' 
));