創意無限空間

Archive for the 'WordPress' Category

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

WordPressのAkismetプラグインを使ってみる このエントリーを含むはてなブックマーク

WordPressには標準でコメントスパム対策のプラグインであるAkismetが用意されています。ただ、これを実際に使えるようにするには色々と手順を踏まなければいけないので、まとめてみました。

  1. WordPressのプラグイン管理画面で、Akismetを有効化します。
    WordPressプラグイン管理画面
  2. しかし、この時点ではまだ作動はしていません。WordPress.com API Keyを取得する必要があります。
    Akismetプラグインを有効にする
  3. WordPress.comでユーザー名、メールアドレスを入力します。そしてリンク先に目を通したらLegal flotsamのチェックボックスをチェックします。wordpress.comのブログは特に必要なかったので、下のラジオボタンを選択して、次へ。
    WordPressアカウント登録
  4. プロフィール情報を入力します。
    WordPressプロフィール情報登録
  5. アクティベート用URLの書かれたメールが届くのでアクセスすると登録が完了します。登録が完了するともう一通メールが届きます。そこにはユーザー名、パスワードの他に、AkismetのAPI Keyが書かれています。
    WordPress登録完了メール
  6. WordPressのプラグイン管理画面に「Akismetプラグインの設定」というタブが出来ているのでそこをクリックします。するとAPIキーの入力画面になるので、先ほどのメールにあったAPI Keyを入力します。
    Akismetプラグインの設定
  7. API Keyの認証が完了すると設定は終わりです。
    WordPress.com API Key認証完了

これでコメントスパムやトラックバックスパムが来ても、Akismetがはじいてくれます。Akismetは学習機能があるので、もしスパムが通過してしまったとしても、該当のスパムをチェックすることでその結果を学習していきます。

1 comment