この記事は最後に更新してから1年以上経過しています。

テーマから投稿画像のサイズを指定する

説明

投稿記事に挿入する画像サイズは、サムネイル(150×150)、中サイズ(300×300)、大サイズ(1024×1024)がデフォルトだが、テーマによっては別のサイズを指定したい場合はある。基本的には、「設定」-「メディア」の「メディア設定」ページで指定できるが、テーマ内のfunctions.phpで設定しておくとちょっと便利かもしれない。

各画像サイズは、 get_option関数で取得できる。各サイズのオプション名は次の通り。

キーワード意味デフォルト値
'thumbnail_size_w'サムネイルの幅150
'thumbnail_size_h'サムネイルの高さ150
'medium_size_w'中サイズの幅300
'medium_size_h'中サイズの高さ300
'large_size_w'大サイズの幅1024
'large_size_h'大サイズの高さ1024

テーマで独自の画像サイズを設定する場合は、functions.phpのafter_setup_themeアクション当たりで対応するといいだろう。例えば、サムネイルの幅と高さを100ピクセルに変更する場合は、次のように記述する。

add_action( 'after_setup_theme', 'mytheme_setup' );

function mytheme_setup() {
	if ( update_option( 'thumbnail_size_w', 100 ) )
		update_option( 'thumbnail_size_h', 100 );
}

update_option関数は、更新を行う前に現在の値と新しい値を比較し、値が同じ場合は更新せずにfalseを返す。更新した場合はtrueが返るので、trueの場合のみ他の値(ここではサムネイルの高さ)を更新するようにして、無駄な処理を行わないようにしている。


最終更新 : 2012年03月15日 18:33


お勧め

remove_action(2018年5月27日 更新)

bool remove_action( $tag, mixed $function_to_remove [ , int $priority = 10 [ , int $accepted_args = 1 ] ] )
WordPressタグに登録されているアクションを削除する。

wp_timezone(2019年11月14日 更新)

DateTimeZone wp_timezone()
サイトのタームゾーン情報(DateTimeZoneオブジェクト)を取得する。

has_header_image(2018年5月27日 更新)

bool has_header_image( )
現在のテーマがヘッダー画像を持っているか調べる。

wp_media_personal_data_exporter(2018年5月27日 更新)

array wp_media_personal_data_exporter( string $email_address [ , int $page = 1 ] )
メールアドレスに関連付けられたメディア(添付ファイル)情報を取得する。

the_permalink(2018年5月27日 更新)

void the_permalink( [ mixed $post = 0 ] )
現在の投稿データのパーマリンクを表示する。