なぜかIEでNo Gravatarの画像表示がうまくいってなかったので、もう1つのGravatarプラグインGravatarsを入れてみました。このプラグインはアドミンエリアで色々設定できます。
ダウンロードしたら、解凍してそのままWordPressのルートフォルダへアップロード。wp-content内にgravatarsというフォルダができるので、それをFTPソフト等を使って”777″に設定します。デフォルトのGravatar(Gravatarを設定してない人用に表示されるもの)はここに入れておきます。注意するのは、Gravatarの画像の大きさはアドミンエリアで設定できますが、このデフォルトGravatarの設定はできないので、サイトに表示したい大きさのGravatar画像を用意して下さい。
既に別のGravatarプラグインを使っている場合は、先にこれを無効にしてから新しくアップロードしたGravatarsプラグインを有効化して下さい。二つの違いは語尾の”s”です。
プラグインを有効にしたら、comments.phpを書き換えます。
<?php foreach ($comments as $comment) :
if (function_exists(’gravatar’)) {
if (” != get_comment_author_url()) {
echo “<a href=’$comment->comment_author_url’ title=’Visit
$comment->comment_author’>”;
} else {
echo “<a href=’http://www.gravatar.com’ title=’Create your own gravatar at gravatar.com!’>”;
}
echo “<img src=’”;
if (” == $comment->comment_type) {
echo gravatar($comment->comment_author_email);
} elseif ( (’trackback’ == $comment->comment_type) || (’pingback’ ==
$comment->comment_type) ) {
echo gravatar($comment->comment_author_url);
}
echo “‘ alt=’a gravatar’ class=’gravatar’ /></a>”;
}
?>

私の場合は今まで
<div class="gravatar">
から始まっていたGravatarを呼び出すコードの部分を
<? if (function_exists('gravatar')) {
if (” != get_comment_author_url()) {
echo “<a href=’$comment->comment_author_url’ title=’Visit
$comment->comment_author’>”;
} else {
echo “<a href=’http://www.gravatar.com’ title=’Create your own gravatar at gravatar.com!’>”;
}
echo “<img src=’”;
if (” == $comment->comment_type) {
echo gravatar($comment->comment_author_email);
} elseif ( (’trackback’ == $comment->comment_type) || (’pingback’ ==
$comment->comment_type) ) {
echo gravatar($comment->comment_author_url);
}
echo “‘ alt=’a gravatar’ class=’gravatar’ /></a>”;
}
?>

に入れ替えました。
<div class="gravatar">
はもう必要なくて、今まで通りスタイルは.gravatarクラスでつけられるので今回スタイルシートは変更していません。
Gravatarの設定(大きさを変更したり、デフォルトGravatarの変更)は、アドミンエリアのオプションのGravatarsタブメニューからできます。Permalinkを設定している場合、デフォルトGravatarを設定するには、URLをきちんとかかないと駄目のようでした。(デフォルトでは”wp-content”から始まってますが、http://www.yourdomain.com/wordpress/wp-content・・・”というようにしないと駄目でした)

  • デフォルト画像をランダムに
    デフォルトGravatarをランダムに変更もできます。その場合はwp-contentのgravatarsフォルダに、例えばrandomという名前でフォルダを作ってそこへ画像を入れます。あとはそのフォルダをデフォルト画像設定にすればいいだけです(その場合,最初と最後は”/”で終わること。例)/wp-content/gravatars/random/)
    早速ランダム表示にしてみようと、上の通りにやったらうまく行きませんでした。もうちょっと調べてみます・・・。
    2005-07-02: 作者のSkippyさんのサイトにコメントで質問してみたら、スクリプトの方に原因があったみたいで、アップグレード版を近々公開して下さるそうです。
    2005-07-03: プラグインのバージョンが2.3から2.5、続いて2.6にアップグレードされ2.5の段階でランダムイメージの問題は解決しました。
    ランダム表示のことと一緒に、もう1つ質問したことがあります。うちのサイトはCommented entry listというプラグインでトラックバック、ピンバックとコメントを分けているのですが、これでもcomments.phpファイルの編集はRead Meに書いてるのと同じで良いか聞いたところ問題ないとのことでした。ただ、トラックバック、ぴバックの方は、
    gravatars($comment->comment_author_url);.
    と呼び出すのをcomment_arthor_urlにするということです。私の場合は、分けてあるトラックバック、ピンバックのコードにコメント部分と同じ用にGravatarsプラグインのRead Meファイルのコードを挿入しました。また、トラックバック、ピンバックは他とは違う画像をデフォルトで使いたい時は、gravatar()の2個目のパラミータを使えば可能だそうです。Read Meファイルに詳しく書いてあります。
  • Gravatarを記事に表示する
    <gravatar email@yourdomain.com />
    を書けば、記事の好きなところにgravatarを挿入できます。
    a gravatar image
    こんな風に。
  • サイト独自のGravatarを指定する
    アドミンエリアのユーザメニューのGravatarメニューから、そのサイトで使いたいGravatarの設定もできるみたいです。フォーラムとかでそこで使うアバターを設定するみたいな感じなのかな?うちのサイトは私1人だけしか投稿してませんが、複数で投稿していたらそれぞれがログインしてからこれを設定したらGravatarで設定しなくても良いってことなのかな?

他にもRead Meファイルには色々書かれています。難しいのでおいおい試していこうと思います。