2010-04-21 6 views
21

Я применил gravatar для портала, который я создаю, и хотел узнать, есть ли URL-адрес изображения по умолчанию для gravatar? Не все люди, которые посещают сайт, регистрируются или имеют адреса электронной почты, в таком случае есть изображение по умолчанию, которое может быть показано (доступно через gravatar url)Gravatar: Есть ли изображение по умолчанию?

ответ

33

Чтобы выбрать изображение по умолчанию, вы можете использовать d параметр:

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

Или без хэш:

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

Или без параметра d:

http://www.gravatar.com/avatar 

Источник: gravatar.com.

+0

Обычно это было бы моим предложением. Тем не менее, он не отвечает за его требование о том, что некоторые пользователи не зарегистрированы и не имеют * адрес электронной почты (который поэтому не может быть хэширован и отправлен вместе с Gravatar). –

+1

См. Редактирование. Нет необходимости в хеше ... – Macmade

+0

Хм, странно. В соответствии с инструкциями Gravatar, с которыми вы связались, требуется хэш (необязательно). Интересно, работает ли это по дизайну или совпадению. Однако, если это работает, это, безусловно, другой вариант. :) –

3

Не совсем, нет. Этого не хватает в службе Граватара. Он разработан так, чтобы ваши пользователи могли зарегистрировать свой электронный адрес (адреса) и связать с ним изображение gravatar/им. Затем ваш сайт (и другие сайты) может запросить Gravatar, чтобы вернуть изображение, связанное с указанным адресом электронной почты.

Если вы хотите изображение, показывающее для пользователей, которые даже не ввести адрес электронной почты на вашем сайте, у вас есть два решения, которые я могу видеть:

  1. ли это в вашем собственном коде. Когда вы имеете дело с пользователем, у которого нет адреса электронной почты, вы можете просто выводить изображение по умолчанию по своему усмотрению. Конечно, это означает, что это не будет сделано, используя адрес gravatar, и это будет то, что вам нужно будет обслуживать самостоятельно.
  2. Зарегистрируйте адрес электронной почты, посвященный пользователям, у которых нет/введите свои собственные. Например, вы можете зарегистрировать что-то вроде [email protected], а затем зарегистрировать это с помощью сервиса Gravatar и связать выбранное вами изображение по умолчанию с этим. Ваш собственный код приложения по-прежнему должен выводить соответствующий URL-адрес gravatar, заменяя этот адрес электронной почты вместо несуществующего пользователя при создании URL-адреса изображения, но он позволит вам использовать URL-адрес gravatar, который вы попросили.
+1

Ваш # 2 ответ может очень упростить изменение гравитационной нагрузки по умолчанию. Для большинства веб-сайтов требуется хотя бы один адрес электронной почты, так что это отличная идея. – isimmons

13

Gravatar описывают варианты по умолчанию изображения здесь: http://en.gravatar.com/site/implement/images/

Вы можете выбрать, какой вариант вы хотите путем добавления соответствующей пары имя/значение для вашего URL. Например, я использую «тайну человека» (д = мм), который выглядит следующим образом:

выше изображение было создано с URL http://www.gravatar.com/avatar/?d=mm. Обратите внимание, что строка хэша электронной почты была опущена, но обычно вы должны включать ее как часть запроса.

Параметры, указанные в приведенной выше ссылке:

  • 404: не загружать любые изображения, если он не связан с электронной хэша, вместо того, чтобы вернуть HTTP 404 (файл не найден) ответ
  • мм (тайна человек) простой, мультяшный стиль вырисовываются очертания человека (не изменяется по электронной почте хэш)
  • identicon: геометрический рисунок на основе электронной почты хэш
  • MonsterID: сгенерированный «монстра» с различными цвета, лица и т. д.
  • wavatar: генерироваться лицо с различными чертами лица и фонами
  • ретро: удивительное сгенерированным, 8-битного аркадного стиль Неровного лицо
  • пустое: прозрачное изображения PNG (граница добавлена ​​в HTML ниже для демонстрационных целей)

Как вы хотели бы, используя опцию размера s=<pixels>, также изменяется размер изображения по умолчанию.

enter image description here

изображение было создано с http://www.gravatar.com/avatar/?d=retro&s=32

+0

Спасибо, это помогло много! – xyz

3

Вы также можете использовать пользовательский URL для стандартного/резервного аватара. Однако пользовательский URL должен указывать на общедоступный образ, иначе он не будет отображаться. Вы можете learn more here и по телефону gravatar.com.

Вот функция PHP, которую я использую при работе с изображениями gravatar.

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 
); 
0

Для тех, кто хочет просто ссылку на имидже данной электронной почты (это не касается просьбы OP, но эта страница видное место в веб-поиска): Из почти любой POSIX оболочки вы можете создать 256 пикселя Gravatar URL для «[email protected]» с:

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

Вам нужно достаточно, чтобы заменить [email protected] с думать электронная почта обсуждаемый. Я включил «? S = 256», чтобы показать, как указать размер.

Мне это нужно, чтобы проиллюстрировать кому-то, что такое гравитатор.

Смежные вопросы