Как подключить Gravatar (PHP скрипт)

Владимир | | HTML, PHP, Web разработка.

Сервис Gravatar за последнее время стал очень популярным. Даже в админке WordPress’а теперь отображаются аватары комментаторов. Кстати, довольно удобно. Но речь не о WP.

В этой заметке я расскажу, как добавить Gravatar на собственную web страницу.

Для того чтобы получить картинку, вам нужно указать несколько параметров и на их основе сформировать URL. Рассмотрим их подробнее:

1) eMail пользователя, иконку которого вы хотите добавить.
2) Размер иконки (в пикселях).
3) Рейтинг иконок, которые вы разрешаете показывать. Сервис позволяет присвоить иконке рейтинг, на основе которого можно отфильтровать неприличные или содержащие ненормативную лексику аватары.
4) URL картинки, которая будет загружена если gravatar отсутствует.

Теперь напишем функцию, формирующую URL.

function getGravatarUrl($email, $defImg, $size, $rating) {
	return "http://www.gravatar.com/avatar.php?gravatar_id=".md5($email).
		"&rating=".$rating."&size=".$size."&default=".urlencode($defImg);
}

И пример использования:

<?php $defImg = 'https://www.simplecoding.org/wp-content/themes/three_cols/images/myphoto.jpg'; ?>
<img src="<?php echo getGravatarUrl('vova_33@gala.net', $defImg, '90', 'G'); ?>" alt="my gravatar" />

Примечание. Этот пример – немного переделанный вариант решения, размещенного здесь.

Если вы не хотите писать свою функцию, то можно скачать специальный класс.

Использовать его еще проще, чем функцию.

<?php
include 'gravatar.php';

$eMail = 'vova_33@gala.net';
$defImg = 'https://www.simplecoding.org/wp-content/themes/three_cols/images/myphoto.jpg';

$avatar = new Gravatar($eMail, $defImg);
$avatar->setSize(90);
$avatar->setRating('G');
$avatar->setExtra('alt="my gravatar"');
?>
<p>
<?php echo $avatar->toHTML(); ?>
</p>

Комментировать здесь, в общем-то, нечего. Сначала мы подключили файл с классом (gravatar.php). Затем создали экземпляр этого класса и в конструкторе передали email и адрес дефолтной картинки.

После этого, установили размер и рейтинг (методы setSize, setRating).

Отдельно нужно отметить функцию setExtra. Её можно использовать для установки атрибутов тега img (например, alt, class, style).

Последний шаг. Вставляем рисунок с помощью метода toHTML().

Скачать пример.

Хотите поэкспериментировать – качайте архив с примерами.

До встречи!

Интересно почитать:

Собственный виртуальный сервер — yeshost.ru.