Pull to refresh

Применение Gravatar на вашем сайте

Reading time 3 min
Views 6.1K
Наверняка многие слышали о интернет-сервисе Gravatar, недавно мне пришлось им пользоваться и поэтому поводу я решил написать небольшую инструкцию. Как использовать его на вашем сайте, нюансы связанные с его использованием, покажу примеры использования Gravatara. Хочу также заметить что по большей мере эта статься является переводом официального PHP API для данного сервиса.

Принцип работы сервиса:


Когда я в первые услышал об этом сервисе я сразу же представил себе невероятно объёмный API который воротит этими самыми аватарами, но на деле все оказалось иначе. Для того чтобы получить аватар пользователя нам всего лишь нужен его адрес электронной почты и вот уже почти вся работа сделана. После того как мы узнали адрес нам нужно сформировать ссылку которая в самом просто варианте состоит из двух частей:
  1. Адрес самого сайта: www.gravatar.com/avatar, где мы сможем запрашивать аватары.
  2. MD5 Хэш электронного адреса, об этом я расскажу подробно чуть ниже.

В итоге у нас должна получиться ссылка следующего вида: www.gravatar.com/avatar/хэш.  Вот собственно и все, по этой ссылке можно получить простой аватар 80x80, для электронного адреса из которого мы получили MD5 хэш. Данную ссылку можно использовать как картинку, на любом ресурсе, также если требуется расширение файла, а в некоторых случаях так и есть, тогда добавьте в конец хэша ".jpg", после чего адрес аватара приобретет следующий вид: www.gravatar.com/avatar/хэш.jpg. Все это теория, а дальше немного практики и примеров:

MD5 Хэш:


Все знают как использовать стандартную функцию md5() в PHP, для тех кто запамятовал как она оформляется или же просто не знал, ниже приведен пример:

$hash = md5$str );


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

$email = " Электронный адрес ";
$email = trim$email );       //Удаляем из начала и конца строки лишнии символы которые могут изменить результат хеширования.
$email = strtolower$mail );  //Приводим строку к нижнему регистру.
$email = md5$email );        //Хешируем строку.


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

$hash = md5strtolowertrim$email ) ) );


В данном примере, переменная $email содержит «сырую» строку электронного адрес, а после выполнения в переменной $hash окажется готовый к использованию хэш.

Параметризация запроса:


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

Параметр: Описание: Название параметра: Значения параметра:
Размер Данный параметр задает размер изображения который вы получите. s= или size= Целое число от 0 до 512
Изображение по умолчанию Задает изображение которое будет получено в случае если с указанным электронным адресом не ассоциируется ни одно изображение. d= или default= 404
mm
identicon
monsterid
wavatar
retro
Изображение по умолчанию, принудительно  Принудительно загружает изображение по умолчанию. f= или forcedefault=  y
Возрастной рейтинг Указывает возрастной рейтинг для изображения, если для указанного рейтинга не существует изображения то будет возвращено изображения для рейтинга который ниже указанного или изображение по умолчанию. r= или rating= g — Для использования на любых сайтах.pg — Может содержать грубые, оскорбительные слова, сцены насилия, эротические изображения.r — Может содержать нецензурные выражения, жестокие сцены насилия, обнажённое тело, а также пропаганду наркотиков.x — Содержание подходит только для взрослой возрастной категории.


Все выше перечисленные параметры передаются в GET запросе, как пара значение например для того чтобы получить аватар размером 100x100 пикселей вам нужно составить ссылку следующего вида: www.gravatar.com/avatar/хэш?s=100 или www.gravatar.com/avatar/хэш?size=100. Также возможно комбинировать параметры при помощи амперсанда(&), в таком виде ссылка будет выглядеть так: www.gravatar.com/avatar/хэш?size=100?default=mm. Полученную ссылку можно сразу же использовать для теге img.

По большому счёт это и все, в тексте приведенном выше, достаточно информации для того чтобы использовать сервис в ваших сайта и в плагинах для разнообразны CMS. Дополнительную информацию вы можете почерпнуть с официального сайта, там-же можно скачать разнообразные библиотеки, PHP и других языков программирования, для работы с данным сервисом.
Tags:
Hubs:
+7
Comments 16
Comments Comments 16

Articles