【问题标题】:MySQL query for Batch Change Author of WordPress Posts批量更改 WordPress 帖子作者的 MySQL 查询
【发布时间】:2023-01-20 05:13:01
【问题描述】:

我想更改我在 Wordpress 中的所有帖子(+1000 篇文章)的作者姓名。目前我的所有帖子都是同一作者(Johnny 用户,您的 id=1)。问题是我想运行一个 MySQL 查询来随机将帖子的作者更改为另一个用户。目前我有 10 个用户,我想随机将他们作为帖子的作者,这样每个人都应该是大约 100 个帖子的作者。

我知道我可以像这样更改所有作者,但这与我想要实现的目标相去甚远:

UPDATE wp_posts SET post_author='2' WHERE post_author='1';

【问题讨论】:

  • 用作者的 ids 创建一个数组,然后用你的 sql 更新在你的数组上做一个循环
  • SKJ,拜托,你能写一个例子吗?

标签: jquery mysql wordpress random author


【解决方案1】:

我不能给你写一个有效的查询,但你可以像这样手动尝试:

我的方法是首先获取您想要更改其作者的帖子的所有 ID - 仅仅是因为您也必须将它们包含在 WHERE 中。

然后你可以使用 Excel 或 LibreOffice Calc,例如,我多次使用它来完成类似的任务,你可以生成一行 SQL 查询,分为部分/列,其中带有帖子 ID 的部分将是一个单独的列填写导出的帖子 ID。您可以在某些在线实用程序或文本编辑器中随机排列它们的顺序。

然后你用帖子作者 ID 填充/复制其余列 - 就像你有 10 个,假设你有 2000 个帖子/帖子 ID,那么前 200 个将有作者 ID“1”,另外 200 个作者 ID“2 和很快。

所以最后你在 Excel 中有 2000 行,看起来像:

UPDATE wp_posts SET post_author='2' WHERE post_author='1' AND post_id='1';
UPDATE wp_posts SET post_author='2' WHERE post_author='1' AND post_id='50';
UPDATE wp_posts SET post_author='2' WHERE post_author='1' AND post_id='145';
UPDATE wp_posts SET post_author='2' WHERE post_author='1' AND post_id='14';
...
UPDATE wp_posts SET post_author='3' WHERE post_author='1' AND post_id='16';
...

不确定语法,但只是为了展示这个想法....

当您生成这些行时,您可以将它们从 Excel 导出回 txt 文件,也许通过删除一些额外的空格来更正语法,这取决于导出,您可以在备份后尝试。

我完全知道这可以通过某种脚本方式完成,但我认为这也行得通。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 2020-01-04
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 2022-07-20
    相关资源
    最近更新 更多