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

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

「プラグイン API/フィルターフック一覧/get avatar」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(和訳完了。)
(誤記訂正。)
 
14行目: 14行目:
  
 
{{Parameter|$avatar|文字列|ユーザーのアバターを表す <code>&lt;img&gt;</code> タグ。}}
 
{{Parameter|$avatar|文字列|ユーザーのアバターを表す <code>&lt;img&gt;</code> タグ。}}
{{Parameter|$id_or_email|mixed|取得する Gravatar を指定するキー。指定可能なのはユーザー ID, Gravater の md5 ハッシュ, ユーザーのメールアドレス, WP_User オブジェクト, WP_Post オブジェクト, または WP_Comment オブジェクト。}}
+
{{Parameter|$id_or_email|mixed|取得する Gravatar を指定するキー。指定可能なのはユーザー ID, Gravater の md5 ハッシュ, ユーザーのメールアドレス, [[クラスリファレンス/WP_User|WP_User]] オブジェクト, [[クラスリファレンス/WP_Post|WP_Post]] オブジェクト, または [https://developer.wordpress.org/reference/classes/wp_comment/ WP_Comment] オブジェクト。}}
{{Parameter|$size|整数|取得するアバター画像(正方形)の幅および高さ。単位はピクセル。}}
+
{{Parameter|$size|整数|取得するアバター画像(正方形)の幅(高さも同じ)。単位はピクセル。}}
 
{{Parameter|$default|文字列|デフォルトのイメージまたはタイプの URL。指定可能なのは <code>'404'</code>, <code>'retro'</code>, <code>'monsterid'</code>, <code>'wavatar'</code>, <code>'indenticon'</code>, <code>'mystery'</code> (または <code>'mm'</code> や <code>'mysteryman'</code>), <code>'blank'</code>, および <code>'gravatar_default'</code>。|オプション|デフォルトはオプション <tt>'avatar_default'</tt> の値で、 フォールバックは <code>'mystery'</code> です。}}
 
{{Parameter|$default|文字列|デフォルトのイメージまたはタイプの URL。指定可能なのは <code>'404'</code>, <code>'retro'</code>, <code>'monsterid'</code>, <code>'wavatar'</code>, <code>'indenticon'</code>, <code>'mystery'</code> (または <code>'mm'</code> や <code>'mysteryman'</code>), <code>'blank'</code>, および <code>'gravatar_default'</code>。|オプション|デフォルトはオプション <tt>'avatar_default'</tt> の値で、 フォールバックは <code>'mystery'</code> です。}}
{{Parameter|$alt|文字列|アバターの <code>&lt;img&gt;</code> タグに使う代わりの文字列。|オプション|空文字列。}}
+
{{Parameter|$alt|文字列|アバターの <code>&lt;img&gt;</code> タグに入れる <tt>alt</tt> 属性値。|オプション|空文字列。}}
{{Parameter|$args|配列|関数 [https://developer.wordpress.org/reference/functions/get_avatar_data/ get_avatar_data()] へ渡された引数の配列。get_avatar_data() は実行済みです。|オプション}}
+
{{Parameter|$args|配列|関数 [https://developer.wordpress.org/reference/functions/get_avatar_data/ get_avatar_data()] へ渡された引数の配列。フィルターが呼び出されるとき get_avatar_data() は実行済みです。|オプション}}
  
 
== 用例<span id="Example"></span> ==
 
== 用例<span id="Example"></span> ==

2018年5月21日 (月) 14:57時点における最新版

この項目「プラグイン 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最新版との差分