为 wordpress 多站点更新和重新生成缩略图

update and regenerate thumbnails for wordpress multisite

对于我的多站点安装(其中一个有超过 1500 个站点),我正在寻找将缩略图站点更改为 300x300 的最有效方法。在单个站点上,您可以通过更改媒体设置然后 运行 重新生成缩略图插件轻松地做到这一点。我不想为所有站点手动执行此操作,因此我正在考虑如何通过代码执行此操作。

设置缩略图大小是我能弄清楚的部分。我将创建一个循环遍历网络中的所有站点并使用代码更新默认缩略图设置:

if (function_exists('add_theme_support')) { 
    add_theme_support( 'post-thumbnails' ); set_post_thumbnail_size( 300, 300, true ); // default thumbnail size 
}

但我无法弄清楚如何进行再生,因为我找不到关于如何编码的建议。当我搜索这个时,我发现开发人员推荐重新生成缩略图插件。另外,对于代码,我有点怀疑它对我的 wpmu 来说会变得太重。

有什么东西 code/plugin 可以做我想做的事吗? (重新生成全网缩略图?)

在命令行上使用 wp cli,您可以对每个网站使用 Media regenerate 命令行:

wp media regenerate -url=https://sub1.example.com 

wp media regenerate -url=https://sub2.example.com 

然后对于大量站点,您可以使用如下所示的循环:

for i in sub1.example.com sub2.example.com sub3.example.com
do wp media regenerate -url=https://$i --yes
done

对于列表 i 中的每个网站,命令行重新生成媒体。

我在确认消息中添加了 --yes 选项以回答是。