Граватары в комментах

Начну издалека… Думаю что такое «аватарка» знают все. Для тех кто не в курсе — поясню — это маленькая картинка, которая ассоциируется с пользователем. Многие в качетве аватарки ставят свою фотку или выбирают какую либо картинку. И причем многие хотели бы, чтобы аватарка появлялась рядом с их каждым сообщением в сети. Кроме того, существует такой сервис Gravatar. И он как раз призван удовлетворять желание этих самых пользователей. Дело в том, что с его помощью можно привязать аватарку к e-mail`у, а указывая этот ящик на сайтах, подключивших Gravatar добиться показа своей аватарки.
Если вы пользователь, то все просто — регистрируйтесь в сервисе, указывайте ящик и привязвайте к нему картинку.
Для тех, кто хочет подключить Gravatar к своему сайту инструкция ниже:

Если ваш сайт использует MovableType, WordPress, TextPattern, Drupal — вам повезло! Для вас есть уже готовые решения. Другим тоже советую заглянуть и поискать в списке свою CMS.

Если вы пользователь Ucoz или ваш сайт не имеет возможности использовать языки программирования — я расскажу как быстро реализовать поддержку Gravatar самому. Рассматривать буду как сделать на юкозе, остальные по аналогии поймут.
Итак, начнем…
1. Скачиваем java-скрипт, который поможет нам с шифрованием данных в MD5. Дело в том, что адрес аватарки в системе выглядит так: http://www.gravatar.com/avatar/MD5-хеш e-mail
С помощью этого скрипта мы MD5-хеш и получим. Скачали. Загружаем к себе на сайт. Подключаем его к своей страничке
<script src=»адрес_сайта/md5.js» type=»text/javascript»></script>
2. В шаблоне комментария вставляем следующий код:
<script type=»text/javascript»><!—
hash = hex_md5(«$EMAIL$»);
document.write(«<img src=’http://www.gravatar.com/avatar/»+hash+»?d=wavatar&s=80&r=g’>»);
//—></script>

3. Сохраняемся — проверяем.

UPD Усовершенствованная версия на jQuery

[sape count=3]

Комментариев

  1. Дима говорит:

    Татьян, тем у кого wordpress хорошо — поставил плагин и радуйся…
    Вообщем статью писал для тех, кто в пхп не силен или нет возможности его использовать…

  2. Андрей говорит:

    А как изменить аватар для гостей ?
    В смысле, тот который отображается для неопознаных системой(или как её) Gravatar пользователей

  3. Дима говорит:

    Андрей, у меня он отображается случайно. А так за картинку отвечает параметр ?d (у меня ?d=wavatar). Подробнее о картинках на офф. сайте.

  4. pawa говорит:

    dry Так делать нельзя из соображений анонимности имён почтовых ящиков читателей вашего блога. Ведь е-мейлы всех комментаторов на данной странице будут содержаться в html-коде этой страницы, а значит могут быть просканены спамерами.

    • Дмитрий говорит:

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

  5. pawa говорит:

    Дмитрий, практически на любом блоге они только в зашифрованном виде MD5, поскольку все манипуляции выполняются на сервере, а для расшифровки даже одной штуки в MD5 требуется не мало времени. Или какие-такие блоги ты имеешь в виду? wacko И как ты собираешься "сразу шифровать в MD5", если это клиентский скрипт (чтобы он отработал, тебе по-любому надо передать на клиент е-мейл)?

  6. pawa говорит:

    Короче, поскольку это javascript, то такая тема не прокатывает. Кстати, я почему этим заинтересовался — у меня тоже нет возможности генерить ссылки на сервере. И сейчас ищу какой-нибудь сервис, на который, предположим, я бы мог отправлять е-мейл, номер поста и номер коммента при нажатии на кнопку в форме комментирования. Они там сгенерят ссылку на граватар и запишут всё в базу, допустим, под моим ником (тогда ещё и ник надо передать smile ). А у меня к каждому комменту будет их скрипт.js в соответствии с номером поста, номером комментария и ником. Этот скрипт будет выдавать url. Эту хренотень придумал только что на ходу, поэтому, конечно же, не знаю как это всё будет происходить на практике — возможно где-то и ошибка в "пилотном алгоритме". Ну, как вариант smile На гугле, по-моему, есть какой-то сервис для сайтов, посредством которого можно пользоваться их выделенными для этого серверными возможностями как раз в том случае, когда у тебя таких возможностей нет. Не знаю точно, что за сервис. Хотя, может и ошибаюсь — там не всё так гладко или скорее всего, возможности дают небольшие.

    • Дмитрий говорит:

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

      вообщем пока вижу решение в делении адреса (например часть до @ и часть после) — сборка этих частей на javascript и потом уже генерация md5

  7. pawa говорит:

    Дмитрий, а деление адреса где будет происходить? cool Чтобы что-то сделать с е-мейл, надо его сначала получить, а получить его ты можешь только на стороне клиента. По крайней мере, как я понял, именно так поставлено условие в данном посте — вся реализация на стороне клиента. Оффтоп. Хотя, у меня то, конечно, не всё запрещено на сервере. Есть возможность пользоваться шаблонизатором — Smarty — но без вставок пхп-кода. Я не уверен, что он способен зашифровать в MD5, но в остальном… Короче, твоя идея насчёт деления может подбить на кучу других идей, причём на стороне сервера wink А вообще-то надо порыться в документации к Смарти, может и шифровать умеет. А на сайте граватара плагин для Smarty представлен в виде пхп-функции. sad Ну, это и понятно. Отправлял кучу писем на свой сервис: и ссылку на этот плагин давал, и даже готовый плагин на офиц. сайте их движка нашёл — но всё напрасно, там одни ручники. dry

  8. Евгений говорит:

    Может чуть чуть не в тему,а какой вы плагин используете в редакторе сообщений?

  9. Multiminder говорит:

    не очень разбираюсь. в какой шаблон вставлять коды?
    куда всунуть скрипт md5? как-то тема неконкретно описана

Комментарии отключены