如何通过Bash重新生成WordPress缩略图?

时间:2013-08-10 17:18:48

标签: wordpress bash thumbnails

我们的网站有很多图像(大约30.000)。我正在寻找一种方法来重新生成所有缩略图,因为我们的网站布局已经改变。使用插件并不可靠,因为它需要浏览器。

那么,有没有办法通过BASH重新生成所有缩略图?

注意:图像应具有以下尺寸:630x290和960x495。图像应该是中心裁剪的。

2 个答案:

答案 0 :(得分:5)

你可以使用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')

当你认为它已经是正确的命令时,删除回声。

答案 1 :(得分:0)

我不知道BASH, 但你可以在没有任何插件的情况下重新生成你的帖子缩略图,只需将下面的代码放在你的主题函数中.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;
}