我们的网站有很多图片(大约 30.000 张)。我正在寻找一种方法来重新生成所有缩略图,因为我们网站的布局已经改变。使用插件并不可靠,因为它需要浏览器。
那么,有没有办法通过 BASH 重新生成所有缩略图?
注意:图像应具有以下尺寸:630x290 和 960x495。图像应居中裁剪。
我们的网站有很多图片(大约 30.000 张)。我正在寻找一种方法来重新生成所有缩略图,因为我们网站的布局已经改变。使用插件并不可靠,因为它需要浏览器。
那么,有没有办法通过 BASH 重新生成所有缩略图?
注意:图像应具有以下尺寸:630x290 和 960x495。图像应居中裁剪。
您可以使用 imagemagick 的转换。
http://www.imagemagick.org/Usage/resize/#resize
作为在 bash 脚本中使用它的示例:
while IFS= read -r FILE; do
echo convert "$FILE" -resize "630x290" "${FILE%.???}.630x290.jpg"
echo convert "$FILE" -resize "960x495" "${FILE%.???}.960x495.jpg"
done < <(find -type f -iname '*.jpg')
当您认为它已经是正确的命令时,请删除 echo。
我不知道 BASH,但是你可以在没有任何插件的情况下重新生成你的帖子缩略图,只需将下面的代码放在你的主题 functions.php
add_action('image_save_pre', 'add_image_options');
function add_image_options($data){
global $_wp_additional_image_sizes;
foreach($_wp_additional_image_sizes as $size => $properties){
update_option($size."_size_w", $properties['width']);
update_option($size."_size_h", $properties['height']);
update_option($size."_crop", $properties['crop']);
}
return $data;
}