WordPress中,文章作者,评论作者信息默认是不允许更改的,处于某些原因,我们又需要更改,这怎么办呢?
那就直接去数据库中更改吧,在修改之前请先备份好数据库,最好是在本地环境测试完毕后再更新到线上。
WordPress储存用户数据是在wp_users
和wp_usermeta
两个表中(wp_为数据库前缀)
wp_users
WordPress 使用这个数据表存储已注册的用户。用户ID,登录账号,加密的密码,全名,邮箱,网站,注册日期,显示昵称等资料都保存在 wp_users 表中。总之是它认为必要的信息用户。
wp_usermeta
就像 wp_postmeta 数据表是为日志准备的,wp_usermeta 数据表是为用户准备的。可以用它保存注册用户的所有信息 — 个人博客设置(举个例子,如个人可视化编辑器喜好设置),生日,联系信息等等。
如果要修改用户信息,例如替换用户,批量增添用户,那么必须要修改以上内容;如果替换用户还发表了文章、评论,那么还需要照下面的说明修改文章作者和评论记录。
wp_posts 之 post_author
post_author项保存的是对应文章作者的ID,故要修改文章作者,只需要将post_author更改成目标作者的用户ID
wp_comments 之 user_id
评论也会记录已登录的作者user_id
,所以修改评论的用户就需要更改wp_comments表里的user_id,将其修改为目标用户的ID即可。
小结:
将ID为1的用户完全更改成ID为2的用户(不建议这样做,若存在ID2的用户,则会导致ID2同时存在多个信息而无法登陆,如果要替换用户23可以先将2改为4,再将3改为2,最后将4改为3)
UPDATE wp_users SET ID = 2 WHERE ID = 1; UPDATE wp_usermeta SET user_id = 2 WHERE user_id = 1; UPDATE wp_posts SET post_author = 2 WHERE post_author = 1; UPDATE wp_comments SET user_id = 2 WHERE user_id = 1;
SQL执行后的效果为:把用户 id=1 修改成 id=2
通过以上的方法,就能把一个用户的id修改成另外一个id。
如果只是替换文章作者,在wp_users中查询到对应用户ID后,执行以下语句即可:
UPDATE wp_posts SET post_author = 目标用户ID WHERE post_author = 原作者用户ID;
如果是更改相应文章的作者,首先在wp_posts中查询对应文章的ID
select ID,post_title from wp_posts;
然后更改对应文章ID的作者:
UPDATE wp_posts SET post_author = 目标用户ID WHERE ID = 对应文章ID;
0 条评论