WordPressのアイキャッチ画像のサイズを変更したり削除したりする

公開日 : 最終更新日 :

カテゴリー :

前回でWordPressのアイキャッチ画像のサイズ追加について紹介しました。

今回はアイキャッチ画像を表示するときに使うthe_post_thumbnail()に標準でサイズ指定されている「post-thumbnail」のサイズ変更とプラグインなどで指定されるアイキャッチ画像のサイズを削除する方法を紹介します。

アイキャッチ画像のサイズを変更する

「post-thumbnail」サイズは、初期状態では、width・heightともに0が指定されています。この「post-thumbnail」を変更するには、set_post_thumbnail_size()を使用します。

set_post_thumbnail_size()の仕様

set_post_thumbnail_size( $width, $height, $crop );
引数名 説明 デフォルト 必須
$width
[int]
画像の横幅
画像のピクセル数で指定
0
$height
[int]
画像の縦幅
画像のピクセル数で指定
0
$crop
[boolean|array]
画像の切り抜きを行うか否か false

set_post_thumbnail_size()は、add_image_size()に$nameだけない引数の仕様になっていています。それもそのはずset_post_thumbnail_size()は内部でadd_image_size()の$nameに「post-thumbnail」が初期状態でセットしてあり、set_post_thumbnail_size()で指定した引数をセットしてadd_image_size()を動かすような形になっているからです。

set_post_thumbnail_size()の使い方

set_post_thumbnail_size()を使ったアイキャッチ画像のサイズ変更は以下の通りです。サンプルコードはWordPress › Twenty Fifteen « Free WordPress Themesのfunctions.phpに入っているものです。

set_post_thumbnail_size()を使うためには、add_image_size()のときと同様にadd_theme_support( ‘post-thumbnails’ )が必要になります。add_theme_support( ‘post-thumbnails’ )がないとset_post_thumbnail_size()が動きません。

アイキャッチ画像のサイズを削除する

WordPressの不要なアイキャッチ画像のサイズを削除するには、remove_image_size()を使います。remove_image_size()は、WordPress 3.9から用意された関数で今までは、セットしてあるアイキャッチ画像のサイズを拾ってきてunset()を使う以外にありませんでした。

remove_image_size()の仕様

remove_image_size( $name );
引数名 説明 デフォルト 必須
$name
[string]
削除したいアイキャッチ画像のサイズ名 None

remove_image_size()を使うときは、必ず削除したいアイキャッチ画像のサイズ名が必要です。

remove_image_size()の使い方

remove_image_size()の使い方は、以下のような形です。

サンプルコードの上のほうは、add_image_size()で設定されたアイキャッチ画像のサイズを削除しただけです。

下のほうは、Yet Another Related Posts Plugin (通称 YARPP)で関連記事のアイキャッチ画像のサイズを変更する方法を載せてみました。やり方としては、remove_image_size()でYARPPに設定してあるアイキャッチ画像のサイズを削除して新たに同じアイキャッチ画像のサイズ名でadd_image_size()を設定してます。

まとめ

set_post_thumbnail_size()やremove_image_size()は、add_image_size()と合わせてテーマにおけるアイキャッチ画像のサイズ調整を行うのによく使います。特にremove_image_size()でしっかりと設定しておけば、画像のアップロード時に無駄なアイキャッチ画像を生成しなくなるので動作にも影響します。乱用すれば必要なところに表示されないといった事態にもなりかねないので必要なアイキャッチ画像のサイズはしっかり調べて使ってください。

URL

ピンバック

コメント

名前とEメールアドレスが必須です。

以下のHTMLタグが使用できます。 <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>