創意無限空間

WordPressのサムネイルについて このエントリーを含むはてなブックマーク

昨日作成したエントリで、サムネイル画像がやけに小さくなっていたのが気になりました。これはWordPressの管理画面から画像ファイルをアップして、サムネイルを表示するという手順を踏んだのですが、デフォルトの設定だと、サムネイル画像の最大サイズは幅128px、高さ96px以上にならないようです。

残念ながらWordPressの管理画面からはサムネイルの最大サイズの変更は出来ないよう。その代わり、直接ソースに手を加えることでサムネイルのサイズを変更出来るようです。なお今回の対象はWordPress ME 2.2.1です。

参考サイト:

修正するファイルは、wp-admin/admin-functions.phpです。ここではサムネイルサイズの最大サイズを幅400px、高さ300pxにしています。

2107行目:

function get_udims( $width, $height) {
// if ( $height < = 96 && $width <= 128 )
if ( $height < = 300 && $width <= 400 )
return array( $width, $height);
elseif ( $width / $height > 4 / 3 )
// return array( 128, (int) ($height / $width * 128 ));
return array( 400, (int) ($height / $width * 400 ));
else
// return array( (int) ($width / $height * 96 ), 96 );
return array( (int) ($width / $height * 300 ), 300 );
}

2228行目:

if ( $max < 0 || $metadata['width'] * $metadata['height'] < $max ) {
// $max_side = apply_filters( ‘wp_thumbnail_max_side_length’, 128, $attachment_id, $file );
$max_side = apply_filters( ‘wp_thumbnail_max_side_length’, 400, $attachment_id, $file );
$thumb = wp_create_thumbnail( $file, $max_side );

if ( @file_exists($thumb) )
$metadata['thumb'] = basename($thumb);
}

さてこれで、サムネイルのサイズが変わるはずです。ローカルサーバーで動作確認してみると…

??? サムネイル画像が生成されていない…

おかしいと思い、Apacheのエラーログを見てみると何やらエラーが。

[client ***.***.***.***] PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 719280 bytes) in /***/wp-admin/admin-functions.php on line 2266, referer: http://*****/wp-admin/upload.php?style=inline&tab=upload&post_id=*****
Allowed memory size of 8388608 bytes exhausted (tried to allocate 0 bytes)

というわけでメモリーが足りなかったようです。php.iniのmemory_limitを修正してみます。もしレンタルサーバーなどで編集が出来ない場合は、小さいファイルサイズの画像で試したり、上記のサムネイルサイズを小さめにするといいのかな?(これは未確認)

memory_limit = 32M

参考サイト:

2 Comments so far

  1. bizmemo - links for 2007-07-23 7 月 23rd, 2007 22:20:48

    [...] 創意無限空間 » WordPressのサムネイルについて (tags: wordpress) [...]

  2. Nick 7 月 14th, 2009 1:05:53

    I got jacked on usfreeads by some lowlife hiding behind a wireless account. Asswipe was speechless when I got her name and address and came calling lol!

    Phone Search

Leave a reply