web-dev-qa-db-ja.com

Gravatar:デフォルトの画像はありますか?

構築しているポータルにGravatarを実装しましたが、Gravatarのデフォルトの画像URLがあるかどうか知りたいですか?サイトにアクセスするすべての人がログインしているか、電子メールアドレスを持っているわけではありません。そのような場合、表示できるデフォルトの画像があります(Gravatar URLからアクセスできます)。

30
Ritesh M Nayak

デフォルトの画像を選択するには、dパラメータを使用できます。

http://www.gravatar.com/avatar/3b3be63a4c2a439b013787725dfce802?d=identicon

またはハッシュなし:

http://www.gravatar.com/avatar/?d=identicon

または、dパラメーターなし:

http://www.gravatar.com/avatar

ソース: gravatar.com

47
Macmade

Gravatarでは、デフォルトの画像のオプションについてここで説明しています: http://en.gravatar.com/site/implement/images/

適切な名前と値のペアをURLに追加することで、必要なオプションを選択できます。たとえば、次のような「ミステリーマン」(d = mm)を使用します。

上記の画像は、URL http://www.gravatar.com/avatar/?d=mmで作成されました。電子メールのハッシュ文字列は省略されていますが、通常はリクエストの一部として含めることに注意してください。

上記のリンクにリストされているオプション:

  • 404:メールハッシュに関連付けられている画像がない場合は画像を読み込まず、代わりにHTTP 404(ファイルが見つかりません)応答を返します
  • mm :(謎の男)人のシンプルな漫画風のシルエットの輪郭(メールのハッシュによって変化しない)
  • identicon:メールハッシュに基づく幾何学模様
  • monsterid:さまざまな色や顔などで生成された「モンスター」
  • wavatar:異なる機能と背景を持つ生成された顔
  • レトロ:素晴らしい生成された、8ビットのアーケードスタイルのピクセル化された顔
  • 空白:透明なPNG画像(デモの目的で以下のHTMLに境界線を追加)

ご希望のとおり、サイズオプションs=<pixels>を使用すると、デフォルトの画像のサイズも変更されます。

enter image description here

上の画像はhttp://www.gravatar.com/avatar/?d=retro&s=32で作成されました

18
bw1024

そうではありません。それはGravatarサービスのポイントを欠いています。これは、ユーザーが自分のメールアドレスを登録し、Gravatar画像をそれに関連付けることができるように設計されています。次に、サイト(および他のサイト)はGravatarにクエリを実行して、問題の電子メールアドレスに関連付けられている画像を返すことができます。

ウェブサイトにメールアドレスを入力していないユーザーに画像を表示したい場合は、次の2つの解決策があります。

  1. あなた自身のコードでそれをしてください。メールアドレスを持たないユーザーと取引する場合は、自分で選択したデフォルトの画像を出力するだけです。もちろん、これはGravatarアドレスを使用して行われるのではなく、自分でサービスを提供する必要があることを意味します。
  2. 自分のメールアドレスを持っていない/入力していないユーザー専用のメールアドレスを自分で登録します。たとえば、[email protected]のようなものを登録してから、これをGravatarサービスに登録し、選択したデフォルトの画像をこれに関連付けることができます。独自のアプリコードでは、画像URLを作成するときに、ユーザーの存在しないアドレスの代わりにこのメールアドレスを使用して適切なGravatar URLを出力する必要がありますが、要求したものであるGravatarURLを使用できます。
3
Mark Embling

デフォルト/フォールバックアバターにカスタムURLを使用することもできます。ただし、カスタムURLは、公開されている画像を指している必要があります。そうでない場合、画像は表示されません。 詳細はこちら および gravatar.com でできます。

これは、Gravatar画像を操作するときに使用するPHP関数です。

function myprefix_get_gravatar_url( $email, $default='mm', $size=92 )
{
    $email = md5( strtolower( trim( $email ) ) );
    $default = urlencode( $default );
    $size = (int)$size;

    $url = 'http://www.gravatar.com/avatar/';
    if ( is_ssl() )
        $url = 'https://secure.gravatar.com/avatar/';

    return $url.$email."?d=".$default."&s=".$size;
}

使用例:

$img2x = myprefix_get_gravatar_url( 
    '[email protected]',
    'https://www.google.com/images/srpr/logo11w.png',
    184
);
3
Marc Wiest

特定の電子メールの画像へのリンクが必要な場合(これはOPの要求に対応していませんが、このページはWeb検索で目立ちます):ほとんどすべてのPOSIXシェルから、「somebody @example」の256ピクセルのGravatarURLを生成できます。 com "with:

echo "http://gravatar.com/avatar/$(echo -n [email protected] | md5sum | awk '{print $1}')?s=256"

[email protected]を問題の電子メールに置き換えるのに十分なことを考える必要があります。サイズの指定方法を示すために「?s = 256」を含めました。

Gravatarが何であるかを誰かに説明するためにこれが必要でした。

0
sage