CMS

WordPressの「Gravatar」をコメント名から表示する

共有する?

このエントリーをはてなブックマークに追加
follow us in feedly

gravatar

このブログにコメントすると、ランダムな幾何学模様が表示されます。
Gravatar」というアバター登録サービスから自動生成をしてもらっています。

これはWordPressの内部機能で実装されていて、「設定」メニューでアイコンのタイプを選ぶことができます。

gravatar2

…が、この機能、全然役に立ちません。

まずGravatarに登録している人がほとんどいません。登録されていなかった場合「メールアドレス」を元にアイコンを生成しますが、スパムを警戒してコメント欄にメアドを書かない日本のブログでは、いつも同じアイコンしか出ません。

「名前がtwitterIDと合致したらtwitterアイコンを出す」というプラグインも試したことがあるのですが、だいたいの人はコメント名とtwitterIDは違っているようで、あまり効果はありません。

なので、私はこれを改良して
コメント欄に記入した名前」からGravatarを生成させています。
流石にコメントごとに違う名前を名乗る人は少ないので、コメントをくれた人ごとに同じ幾何学模様が出てくれています。

やり方は追記以降で。コメント欄を少しでもカラフルにしたい人はお試しを。

修正の手順

今使っているテーマファイルの「functions.php」に以下の関数を追加してください。
なければ追加して最初の行に「<?php」、最終行に「?>」を書き込んでください。

保存したら、テーマファイルの「コメント」を表示しているテンプレートの中から

というようなコードを探して、以下のコードと差し替えてください。

カスタマイズ

関数「gravatarToID」には三つの引数があり、左から「コメント名」「縦横サイズ」「アイコン種別」となります。カンマで区切って指定します。

コメント名
WordPressの場合「$comment->comment_author」となります。
縦横サイズ
ピクセルサイズです。最大512ピクセルまで指定できるようです。
アイコン種別
  • identicon ・・・ 幾何学模様
  • wavatar ・・・ ばいきんみたいなキャラ
  • monsterid ・・・ モンスター風

引数を何も付けないと「名無しさん」の幾何学模様が64ピクセルで表示されます。

下記のようにすると、ばいきんみたいなアイコンが縦横48ピクセルで表示されます。

関数の解説

Gravatarは、以下のURLでランダムアイコンを書き出しています。

http://www.gravatar.com/avatar/[生成元の半角英数字]?d=[種別]&?s=[幅]

なので、コメントの名前をmd5を複数通したランダムな英数字に暗号化して、上のURLに渡すようにしています。

Gravatarに怒られるかもしれませんが、PHPコードが書ければ、WordPress以外のブログにも実装できそうな気がします。
もうちょっと他にもランダムパターンがあればいいんですけどね。

補足

書き忘れ。実際のGravatarはもっと濃い色で表示されます。
私はCSSで透明度を調整することで、自分のブログに色合いを合わせています。

----- EXTENDED BODY:

共有する?

このエントリーをはてなブックマークに追加
follow us in feedly

permalink

http://webbingstudio.com/weblog/cms/entry-113.html

publish

tags