• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

プラグイン API/フィルターフック一覧/get avatar

提供: WordPress Codex 日本語版
移動先: 案内検索

この項目「プラグイン API/フィルターフック一覧/get avatar」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

説明

フィルター get_avatar を使うと、関数 get_avatar() が返すアバター画像を変えられます。

このフィルターは関数 get_avatar() の最後の最後で次のように呼び出されます:

    return apply_filters( 'get_avatar', $avatar, $id_or_email, $size, $default, $alt, $args );

パラメータ

$avatar
文字列) (必須) ユーザーのアバターを表す <img> タグ。
初期値: なし
$id_or_email
mixed) (必須) 取得する Gravatar を指定するキー。指定可能なのはユーザー ID, Gravater の md5 ハッシュ, ユーザーのメールアドレス, WP_User オブジェクト, WP_Post オブジェクト, または WP_Comment オブジェクト。
初期値: なし
$size
整数) (必須) 取得するアバター画像(正方形)の幅(高さも同じ)。単位はピクセル。
初期値: なし
$default
文字列) (オプション) デフォルトのイメージまたはタイプの URL。指定可能なのは '404', 'retro', 'monsterid', 'wavatar', 'indenticon', 'mystery' (または 'mm''mysteryman'), 'blank', および 'gravatar_default'
初期値: デフォルトはオプション 'avatar_default' の値で、 フォールバックは 'mystery' です。
$alt
文字列) (オプション) アバターの <img> タグに入れる alt 属性値。
初期値: 空文字列。
$args
配列) (オプション) 関数 get_avatar_data() へ渡された引数の配列。フィルターが呼び出されるとき get_avatar_data() は実行済みです。
初期値: なし

用例

この例は、指定されたユーザーを取得して ID が 1 ならカスタム画像を返します。

// Apply filter
add_filter( 'get_avatar' , 'my_custom_avatar' , 1 , 5 );

function my_custom_avatar( $avatar, $id_or_email, $size, $default, $alt ) {
    $user = false;

    if ( is_numeric( $id_or_email ) ) {

        $id = (int) $id_or_email;
        $user = get_user_by( 'id' , $id );

    } elseif ( is_object( $id_or_email ) ) {

        if ( ! empty( $id_or_email->user_id ) ) {
            $id = (int) $id_or_email->user_id;
            $user = get_user_by( 'id' , $id );
        }

    } else {
        $user = get_user_by( 'email', $id_or_email );	
    }

    if ( $user && is_object( $user ) ) {

        if ( $user->data->ID == '1' ) {
            $avatar = 'YOUR_NEW_IMAGE_URL';  // カスタム画像の URL
            $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
        }

    }

    return $avatar;
}

参考

このフィルターを使うときトリッキーな部分が2ヵ所あります:

  1. 関数 get_avatar() はユーザーの ID またはオブジェクトまたはメールアドレスを渡されます。探しているキーがどれなのかわからないので、すべてチェックする必要があります。
  2. html の <img> タグ全体を返します。これにはクラス、alt 属性、src 属性を含みます。そのため画像の URL だけでなく全体を再生成する必要があります。

変更履歴

  • 4.2.0 : パラメータ $args が追加された。
  • 2.5.0 : 新規導入。

関連項目

最新英語版: WordPress Codex » Plugin API/Filter Reference/get avatar最新版との差分