だいぶマニアックな記事ですが、最近「WP-CLI」という、WordPressをコマンドで操作する方法を知りました。ですがあまりにも情報が少なく、特に「wp media regenerate」に関する記述はほとんど見つからなかったので記事にしてみました。
そもそもwp media regenerateとは何かというと、通常アイキャッチの再生成はプラグインで行うのですが、それを変わりにやってくれるコマンドのことです。
使ってみてのメリットは以下のとおりです。
- 途中で止まらない
プラグインを使って行うと、処理が途中でとまってしまうことがあるのですが、これはそれが無いと思いました。 - 負荷が少ないない
プラグインを使って再生成するよりも軽量だと思いました。
一方デメリットとしては遅いことですね。
ここら辺は今度記事を書きたいと思います。
で、そんなwp media regenerateですが、オプションが3つあります。
それは下記の3つです。
- attachment-id
- サムネイルIDを指定して再生成する
- –skip-delete
- wp media regenerateは通常、使用していないサイズのサムネイルを削除するのですが、それを無効化します。
- –only-missing
- サムネイルが無いものだけ再生成します。
(ただしこれを指定しても速度的には変わらなかったです。)
これらのオプションをどのように指定するかをご紹介します。
まず、attachment-idは下記のように書きます。
wp media regenerate 11111 55555 22222
このコマンドの後ろの数字が、再生成したいサムネイルのIDになります。
勘違いしやすいのですが、投稿IDではありません。
例えば、投稿ID25554についているサムネイルを再生成したいと思ったら、その投稿にセットされているサムネイルのIDを調べてそれを記述します。
PHPではこのように書くと取得できます。
get_post_thumbnail_id($post->ID);
複数再生成したい場合には、「,」ではなく「 」で区切りますので注意が必要です。
次に–skip-deleteですが、これは簡単です。
wp media regenerate --skip-delete
これで終わりです。
同様に–only-missingも
wp media regenerate --only-missing
で完了です。
これらのオプションは組み合わせて使うことも出来ます。
wp media regenerate 55555 22222 33333 11111 --skip-delete --only-missing
となります。順番は特に関係ないですが、サムネイルIDはまとめて書いたほうがいいと思います。
以上で紹介を終わりにします。
また次回の記事でお会いしましょう。
コメント