Интеграция Gravatar в DLE

Интеграция Gravatar в DLEИзвестно, что сейчас многие пользователи пользуются сервисом Gravatar.
Зарегистрировавшись, Вы сможете загрузить для себя глобальный аватар, который будет отображаться на всех сайтах, поддерживающих эту систему (в основном это различные блоги и форумы). Идентификация происходит по вашему e-mail.
Большинство блоггеров используют движок Wordpress - у него уже встроена данный плагин, т.к. они приобрели данный сервис.
Есть так же блоггеры, использующие DataLife Engine (DLE) и мой блог не исключение, вот и решил интегрировать Gravatar в DLE.
Данный мод позволяет полностью интегрировать Gravatar для DLE!
Если у пользователя нет собственного аватара, то отображается Gravatar, если и он отсутствует, то стандартное изображение "нет аватара".

И так, открываем файл ./engine/classes/comments.class.php
Находим в нем строку:
else $tpl->set( '{foto}', "{THEME}/images/noavatar.png" );
И заменяем её на:
else {
    $grav_url = 'http://gravatar.com/avatar/' . md5( $row['gast_email'] ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
    $tpl->set('{foto}', $grav_url);
}

Теперь в файлах:
./engine/modules/profile.php
./engine/modules/fullsearch.php
./engine/modules/search.php
./engine/modules/pm.php
./engine/init.php
./engine/ajax/pm.php
./engine/ajax/profile.php
Будем делать следующие изменения (просто повторите данную операция над всеми файлами):
Находим строку:
else $tpl->set( '{foto}', "{THEME}/images/noavatar.png" );
И заменяем её на:
else {
    $grav_url = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
    $tpl->set('{foto}', $grav_url);
}


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

При желании можете так же добавить отображение gravatar в админке:
Для этого откройте файл ./engine/inc/editusers.php
Найдите в нем строку:
$avatar = "engine/skins/images/noavatar.png";
И замените на:
$avatar = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';

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

Обратите внимание на имя файла "noavatar.png" - у вас оно может быть с расширением jpg, gif (только если Вы сами изменили его).
Входящие переменные для gravatar:
s=100 - размер аватары в пикселях, в данном случае 100px. От 1 до 512 пикселей.
r=g - категория аватара (g, pg, r, x)

Теги: DLE, Скрипты
Последние изменения: 29 мая 2011

Причина: Поправки для DLE 9.3


Максим (23 февраля 2010 18:08) #1
<-- Проверка
Смотрите URL изображения
[цитировать]


Ma)(on (26 марта 2010 18:14) #2
...
[цитировать]


WiseBird (27 марта 2010 00:54) #3
работает, работает. у меня граватар)
[цитировать]


Евгений (28 августа 2011 19:59) #4
Очень замечательная,кстати заодно и проверим этот gravatar :D

Очень замечательная,кстати заодно и проверим этот gravatar :D
[цитировать]


NapA (29 октября 2012 12:12) #5
DLE 9.7. Работает везде, кроме главной страницы. Странно. Не скажете где копнуть?
[цитировать]

Добавление комментария

Код: Включите эту картинку для отображения кода безопасности
обновить, если не виден код
Введите код