WordPressでWP Smush.itとRegenerate Thumbnailsを同時に使うと遅い

WordPressでページレイアウト変更のために、サムネイルサイズを変更した。

functions.phpに次のようなコードを書いてサムネイルサイズを指定。

set_post_thumbnail_size(36,36,true);

しかし、すでにアップロード済でWordPressのメディアに登録済画像は、サムネイルサイズが表示サイズと異なってしまう。
その時には、

Regenerate Thumbnails – WordPress plugin | WordPress.org

というプラグインがとても便利。登録済の画像のサムネイルも、もう一度生成することができる。

ところが、実際に画像を選択してRegenerate Thumbnailsを適用してみると、Regenerate Thumbnailsの動作がとても遅い。

遅い原因は Smush – Compress, Optimize and Lazy Load Images – WordPress plugin | WordPress.org

こちらは画像を登録すると画像を最適化してファイルサイズを削減してくれる便利なプラグイン。画像を登録した時に自動的にファイルサイズ削減をしてくれるが、別のサーバーYahoo! YSlow Smush.it?で画像処理をするので処理に時間がかかる。

一方、Regenerate Thumbnailsプラグインは、サムネイル再作成時にオリジナル画像を基にして、 Function Reference/wp generate attachment metadata « WordPress Codex 関数を利用する。

このとき、WP Smush.itプラグインはwp_generate_attachment_metadataをフックしているので、Smush.itの最適化も同時に行われ、処理時間がかかる。

WP Smush itプラグインをいったん停止して、Regenerate Thumbnailsを行うと処理が速くなった。

Regenerate Thumbnails