WordPress では、投稿やページにアップロードした画像が自動的に複数のサイズで生成されます。
add_image_size()
を使用することで、独自の画像サイズを追加し、テーマやプラグインで利用できるようになります。
本記事では add_image_size()
の基本的な使い方から応用まで詳しく解説します。
目次
機能の説明
add_image_size() とは?
add_image_size()
は、WordPress に新しい画像サイズを登録するための関数です。
登録したサイズは、投稿やカスタム投稿タイプで画像をアップロードした際に自動生成され、the_post_thumbnail()
などで利用できます。
どのようなときに使うのか?
- サイトのデザインに最適な画像サイズを追加したいとき
- サムネイル画像の比率を統一したいとき
- 余分な画像サイズを減らし、パフォーマンスを向上させたいとき
シンプルなコード例
function my_custom_image_sizes() {
add_image_size('custom-thumb', 300, 200, true);
}
add_action('after_setup_theme', 'my_custom_image_sizes');
custom-thumb
という新しい画像サイズを登録。- 幅300px、高さ200pxの固定サイズ。
true
を指定することで、中央からトリミングされる。after_setup_theme
フックを利用してテーマがセットアップされた後に実行。
使い方の説明
add_image_size()
の基本的な書き方は以下のとおりです。
add_image_size( $name, $width, $height, $crop );
引数の説明
引数 | 説明 |
---|---|
$name | 画像サイズの名前(文字列) |
$width | 画像の幅(ピクセル) |
$height | 画像の高さ(ピクセル) |
$crop | true (トリミング)または false (アスペクト比を維持) |
具体的な使用例
function register_custom_sizes() {
add_image_size('custom-large', 1024, 768, false);
add_image_size('custom-square', 500, 500, true);
}
add_action('after_setup_theme', 'register_custom_sizes');
一緒に使うことが多い関連タグ
the_post_thumbnail()
登録した画像サイズを投稿で表示する場合に使用。
echo get_the_post_thumbnail( get_the_ID(), 'custom-large' );
set_post_thumbnail_size()
デフォルトのサムネイルサイズを変更する。
set_post_thumbnail_size(150, 150, true);
追加情報で取得したい場合
WordPress では wp_get_attachment_image_src()
を使うことで、指定した画像サイズの URL を取得できます。
$image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'custom-thumb' );
echo '<img src="' . esc_url( $image[0] ) . '" width="300" height="200">';
想定されるトラブル
追加した画像サイズが反映されない
解決方法
過去にアップロードした画像には新しいサイズが適用されないため、Regenerate Thumbnails
プラグインを使用してサムネイルを再生成します。
wp media regenerate
Q&A
まとめ
add_image_size()
は、WordPress の画像管理をカスタマイズする重要な関数です。
適切に設定することで、サイトのデザインやパフォーマンスを向上させることができます。
コメント