テーマ変更後などのアイキャッチ崩れを一気に直す。WP-CLIでサムネイルを高速に再生成【KUSANAGI対応】

テーマ変更や画像サイズの見直しをしたあと、アイキャッチや記事内画像の表示が崩れて困ったことはありませんか?
そんなときに必要となる作業がサムネイルの再生成です。

定番とされているのはWordPressの管理画面でプラグインを使って処理する方法です。
しかし画像点数が多いサイトですと重くなりがち。

そこでおすすめなのが、ターミナルからWP-CLIを使う方法です

特にKUSANAGI環境では、追加準備なしでWP-CLIを利用できます。
本記事では、サムネイル再生成の基本コマンドと、よく使うオプション、実行前に知っておきたい注意点をまとめます。

天満川鈴 WRITTEN BY 天満川鈴
スポンサーリンク

WP-CLIでサムネイルを高速再生成するときのおすすめコマンド

既にWP-CLIの使い方を知っている方に向けて、ざっくり結論を記してしまいます。
サムネイル高速再生成におけるおすすめコマンドはこちらです。

cd /home/kusanagi/(プロファイル名)/DocumentRoot
wp media regenerate --only-missing --yes

wp media regenerateは、WordPressに登録されている画像からサムネイルを再生成するコマンドです。
–only-missing を付けると、すでに存在しているサムネイルを作り直さず、不足分だけを生成できます。

つまり、ムダがないってこと

さらに –yes を付けると、途中の確認を省略できます。
画質の見直しなどで既存サムネイルをすべて作り直したい場合を除けば、通常運用ではこの形がもっとも扱いやすいと思います。

WP-CLIとは?

WP-CLIは、ざっくり言うと、超便利なコマンドラインツールです。
詳しくはこちらに記しています。
ぜひ、あわせてお読みください。

プラグインよりWP-CLIの方が快適な理由

サムネイル再生成といえば、定番プラグインとして「Regenerate Thumbnails」がよく知られています。
WordPress管理画面から操作できるため直観的でわかりやすいです。

ただし画像点数が多いサイトでは重くなりがち。
処理中は画面を開いたままにしておく必要もあります。
ハラハラしたりイライラしたりで、ちょっと落ち着かないかもしれません。

その点、

WP-CLIは気持ち良く作業できます

黒い画面(ターミナル)での操作に慣れていないと抵抗あるかもですが。
HTTPリクエストの往復や管理画面操作のオーバーヘッドがないぶん軽快です。
作業中にタブや接続状態を気にし続けなくてよく、運用上の事故を減らせるのも利点です。

しかも、なんと、

Regenerate Thumbnailsが自らよりもWP-CLIでの作業を推奨しています!

以下は、Regenerate Thumbnailsプラグインページからの引用です。

代替案
WP-CLI

もしサーバーのコマンドラインにアクセスできるなら、このプラグインの代わりに、大量のサムネイル処理のために高速 (HTTPリクエストのオーバーヘッドが無い) かつ スクリーン の中で動作できる WP-CLI の使用を強く推奨します。詳しくは media regenerate コマンド のドキュメントを参照してください。

引用:WordPress公式「Regenerate Thumbnails」

もちろん、少数の画像だけを扱うならGUIでも十分です。
ただ、画像数が多いサイトやテーマ変更後にまとめて整えたい場面では、WP-CLIでの作業をおすすめします。

KUSANAGIならWP-CLIをすぐに使える

KUSANAGI環境の大きな利点のひとつが、WP-CLIを前提にした運用がしやすいことです。
追加で複雑な準備をしなくても、そのままコマンドを実行できます。

基本的には、次のようにDocumentRootへ移動してから操作します。

cd /home/kusanagi/(プロファイル名)/DocumentRoot

この場所でwpコマンドを実行すれば、対象のWordPressに対して各種操作が可能です。
サムネイル再生成に限りません。
キャッシュ削除やデータベース最適化など幅広く操作でき、WordPress運用が見違えるほど楽になります。

注意点を2つあげておきます

注意点その1。
wpコマンドが動かないときはカレントディレクトリを確認すること。
かなりの確率でDocumentRoot以外の場所にいると思います。

私のことなんだけどね

注意点その2。
複数のWordPress環境を同じサーバーで扱っている場合、どのプロファイルのDocumentRootにいるかを必ず確認してください。
間違えて意図しないサイトに対して処理してしまうおそれがあります。

サムネイル再生成に限れば、各サイトで使うアイキャッチのサイズを一律で決めておくと安心です

wp media image-sizeでサムネイルサイズ一覧を確認する

まず再生成の前にテーマが登録しているサムネイルのサイズを確認してみましょう。
次のコマンドを打ち込みます。

wp media image-size

私の環境ですと、次のようにリストが表示されます。
+————————-+——-+——–+——+——-+
| name | width | height | crop | ratio |
+————————-+——-+——–+——+——-+
| full | | | N/A | N/A |
| 2048×2048 | 2048 | 2048 | soft | N/A |
| 1536×1536 | 1536 | 1536 | soft | N/A |
| large | 800 | 0 | soft | N/A |
| size_560_blogcar-ratina | 560 | 0 | soft | N/A |
| medium | 400 | 0 | soft | N/A |
| size_280_blogcard | 280 | 0 | soft | N/A |
| thumbnail | 200 | 0 | soft | N/A |
| size_128_square | 128 | 0 | soft | N/A |
| size_80_square | 80 | 80 | hard | 1:1 |
+————————-+——-+——–+——+——-+

表の見方はおおむね次の通りです

  • width:横幅
  • height:高さ
  • crop:トリミングの有無や方式
  • ratio:画像比率の目安

たとえば widthが300、heightが0の場合。
横幅300を基準にして高さは元画像の比率に応じて決まります。
width と height が両方指定され、さらに crop が有効になっている場合。
必要に応じてトリミングしながら指定サイズへ合わせる形となります。

再生成コマンドだけ先に打つこともできますが、

私としては一覧を確認してから作業を進めるのをおすすめします

使わないサイズや似たようなサイズが残っていると、ディスクを圧迫しますし再生成の手間がかかります。
先に整理しておくと、そのぶんだけ保守運用が楽になります。

サムネイルサイズの追加方法

wp media image-sizeはあくまでも「表示する」だけです。

サムネイルサイズの登録はWordPress側のPHPコードで行います

例えばリスト中のsize_280_blogcardは私が新しく追加したもの。
functions.phpなどに次のコードを記せば、生成するサイズを追加できます。

add_image_size('size_280_blogcard', 360, 0, false);

逆に登録を削除するとき。
WordPress標準設定(large、medium、thumbnail)なら、管理画面左サイドバーの「メディア設定」を開いて、不要なサイズの幅と高さを「0」にしてください。
その他なら、こちらをfunctions.phpなどにコピペして、削除したいサイズに書き換えてください。

function remove_thumbnail_sizes() {
remove_image_size( '1536x1536' );
remove_image_size( '2048x2048' );
remove_image_size( 'thumb150' );
remove_image_size( 'thumb100' );
}
add_action('init', 'remove_thumbnail_sizes');

wp media regenerateでサムネイルを再生成する

wp media regenerate

WP-CLIでサムネイルの再生成をするコマンドはこちらです。

wp media regenerate

このまま打っても作業できます。
しかし実戦上は作業目的に合わせてオプションを追加するのが通常です。

–only-missing

wp media regenerate --only-missing

ざっくり言うと、

既存のサムネイルの「再生成」を省略して、足りないものだけを「生成」するオプションです

たとえば先述サムネイルサイズに「150×150」を加えたとします。
「150×150」のサイズ以外が既に作ってあるなら、画質などの問題がない限り作り直すのはムダです。
そんなとき–only-missingオプションを入れると、「150×150」だけを生成するので作業時間の短縮を図れます。

–skip-delete

wp media regenerate --skip-delete

ざっくり言うと、

登録してるサイズ以外のサムネイルを残すためのオプションです

デフォルトでは登録されていないサムネイルを削除します。
しかし過去記事のどこかで古いサムネイルを参照していたり想定外の場所で使われていたりすると、アイキャッチが飛んだり画像が崩れたりすることがあります。
特にテーマ移行直後など、旧テーマ側のサイズがまだ必要になる可能性がある場合は–skip-deleteを付けておくと安全です。
あるいは実行前にファイルとデータベースのバックアップを取っておきましょう。

–yes

wp media regenerate --yes

ざっくり言うと、

途中で確認を飛ばしたいときのオプションです

自分で内容を理解したうえで実行するなら、付けておくとテンポよく進められます。

おすすめは –only-missing –yes

おすすめは次のオプションを組み合わせた形です。

wp media regenerate –only-missing –yes

これなら既存の正常なサムネイルを無駄に作り直さず、不足分だけを補えます。
処理量を抑えやすいので、大規模サイトでも比較的扱いやすいです。
ただし、古いサイズを残したい場合や、確認を挟みながら進めたい場合は別の選択肢もあります。

たとえば、

私は –yesを入れてません

私の環境ですと、確認を求められるのは最初の1回だけなのが通常。
–yesと打つ時間と確認する時間と大して変わらない気がするためです。

一方で「古いサイズを消すのが不安」という場合は–skip-delete を検討しましょう。
安全を重視するなら、問題がないことを確認してからサムネイルを整理するのも一手です。

再生成前に知っておきたい注意点

サムネイルを再生成する前に知っておきたい注意点もあります。
特に大事なのは、

元画像が残っていることです!

サムネイル再生成は、元画像をもとに各サイズを作り直す処理です。
そのため、元画像が存在しないのにサムネイルだけ残っているような状態だと、再生成時に問題が起きることがあります。

たとえば、昔の運用で元画像を消してしまい、サムネイルだけを使い続けていた場合。
この状態で整理や再生成を進めると、参照していた画像が消えたり、アイキャッチがリンク切れになったりする可能性があります。

もっとも画像が吹っ飛んでも対処できます。
元の画像があるなら、新しいテーマに元のテーマで使ってたサムネイルサイズを登録して作り直せばOK。
それで再びリンクされます。

……元の画像があるならですけど。

元の画像がないのにサムネイルだけが残っている場合、そのサムネイルは消えてしまいます。
このことによってトラブルが生じることもあります。
例えば元画像なしのサムネイルを記事のアイキャッチとして設定していた場合、リンク切れで吹っ飛んでしまいます。
そしてこの場合、二度と戻せません。

私のことなんだけどね

初心者時代からの負の遺産を下手に抱え込んだおかげでこうなりました。
私みたいな事故を防ぐためには、以下を心がけましょう。

  • 元画像は残す
  • バックアップをとる
  • skip-deleteオプションをつける

まとめ

黒い画面(ターミナル)を操作することに不安をおぼえる方は多いでしょう。
きっとプラグインを入れてWordPress上でGUIで操作する方が抵抗なく作業できるはずです。
しかしWP-CLIだとぶっちぎりで速いです。
トータルの快適感はWP-CLIが圧倒的に優ると思います。
もしWP-CLIを使ったことがないなら、ぜひチャレンジしてみてください。

きっとアイキャッチの作り直しもテーマ変更も怖くなくなります!

スポンサーリンク
天満川 鈴のプロフィール画像
WRITTEN BY

天満川 鈴

未経験からWEB業界に入り、現在はWEBディレクターとして実務に従事。 要件整理・導線設計・コンテンツ構成などを学びながら、日々改善を重ねています。 AIを活用したコンテンツ制作・効率化を強みとし、プロンプト設計を含めた制作フローの最適化にも取り組んでいます。
本サイトでは、WordPressやサイト制作に関する試行錯誤・検証内容を中心に発信。 技術検証の一環として、KUSANAGI公式サイトにて記事を2回紹介いただきました。

RECOMMENDED INFRASTRUCTURE

私はConoHa以外を勧めない。

2016年からずっとConoHaを使い倒してきました。知人に「一番いいサーバーは?」と聞かれたら、迷わずここを教えます。

レンタルサーバーナンバーワンを誇る高速環境であることはもちろん。私が「黒い画面って何?」というド素人からサイト制作のプロになれたのは、傍らにずっとこのはちゃんがいてくれたから。
私がConoHaを使い続ける、嘘偽りない理由です。

※ConoHaに初めて入会の方限定。
本CTAの画像もしくはボタンを押してWINGパック12か月以上を契約すると、最大5000円割引してもらえます。

公式サイトで詳細を見る
× 閉じる