set_post_thumbnail_sizeでアイキャッチ画像の切り出し位置指定がうまく動作しない時は…

このエントリーをはてなブックマークに追加

WordPressのアイキャッチ画像のサイズと切り抜きの有無は、set_post_thumbnail_sizeという関数で設定が可能です。
関数リファレンス set_post_thumbnail_size

通常WordPressで画像の切り抜きを実行する場合は画像の中央を基準に切り抜きが実行されます。
ただ、サイトで扱う画像の性質によっては別の場所から切り抜きたいというケースも多いはず。
僕の場合はサイトのスクリーンショットを元に切り抜き画像を作りたかったので、上から切り抜いてもらいたいという状況が発生しました。

$crop で画像切り出し位置を指定

上記の関数リファレンスに書いてあるとおり、set_post_thumbnail_sizeの中の$cropの値にarrayで位置を指定すれば、切り出し位置を自由に設定することが可能です。
(ちなみにアイキャッチ画像以外のサイズで使用したい場合はadd_image_sizeでも同様のことができます)
サンプルとして掲載されているコードは以下のとおりです。

set_post_thumbnail_size( 50, 50, array( 'top', 'left') );

これを実行してみたのですがどうにもうまくいかない。
切り抜き自体は実行されますが位置は指定されず…。
そこでいろいろいじっていたところ、とても単純な変更で位置指定が可能になりました。

set_post_thumbnail_size( 50, 50, array( 'left', 'top') );

arrayの中を’左右’ , ‘上下’の順に変更しました。もし切り出しがうまくいかないよーという時に参考にしてください。

お問い合わせはこちら