loading...

Авторизация ...

Имя пользователя :
Пароль :
я всё забыл!

ХакиИнтеграция Gravatar

Написал Hacker`, 7 марта 2010 | 14 комментариев | рейтинг новости не нравится   +7   нравится Версия для печати
Интеграция Gravatar


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

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

Делается очень просто, для этого нужно будет отредактировать несколько файлов:
./engine/classes/comments.class.php
./engine/modules/profile.php
./engine/modules/fullsearch.php
./engine/modules/search.php
./engine/inc/editusers.php

И так, открываем файл ./engine/classes/comments.class.php
Находим в нем строку:
else $tpl->set( '{foto}', "/templates/Simple/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
Будем делать следующие изменения (просто повторите данную операция над всеми файлами):
Находим строку:

else $tpl->set( '{foto}', "/templates/Simple/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);
}


При желании можете так же добавить отображение gravatar в админке:
Для этого откройте файл ./engine/inc/editusers.php
Найдите в нем строку:

$avatar = "engine/skins/images/noavatar.png";
И замените на:
else {
    $avatar = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
}


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

Для начала надо сделать SQL запрос:
ALTER TABLE `dle_online` ADD `email` VARCHAR( 80 ) NOT NULL AFTER `foto`


Теперь открываем ./engine/inc/online.php
И ищем все (2 раза):
`foto`,
После вставляем
`email`,

Ищем
'{$member_id['foto']}',
И после вставляем
'{$member_id['email']}',

Ищем
`foto`=VALUES(`foto`),
И после вставляем
`email`=VALUES(`email`),

Ищем
'unknown',
И после вставляем
'unknown',

Ищем
`foto`='unknown',
И после вставляем
`email`='',

И наконец ищем
$foto = $config['http_home_url']."templates/".$config['skin']."/images/noavatar.png";
И заменяем эту строку на
$foto = '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)

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


Отблагодарили: Tegs, ronarik

Комментарии пользователей

  Экспорт комментариев в RSS
 Сортировать по рейтингу, по дате

Написал Hacker`, 7 марта 2010 в 21:10 плохой комментарий   0   хороший комментарий
Новостей: 3, комментариев: 46, Пользователи
Карма:
Я бы для мода онлайн скрыл код под спойлер, чтобы не возникало лишних вопросов.

Написал nickon, 7 марта 2010 в 21:35 плохой комментарий   0   хороший комментарий
Новостей: 230, комментариев: 476, Администраторы
Карма: 27±
Спойлера на 4дле не предусмотрены =)

Комментарий был скрыт за отрицательный рейтинг (-5) и по мнению остальных пользователей не несёт смысловой нагрузки!
показать комментарий
Написал Hacker`, 7 марта 2010 в 21:36 плохой комментарий   +2   хороший комментарий
Новостей: 3, комментариев: 46, Пользователи
Карма:
И опять пошло набивание комментов, подпись под новостью прочитать влом?
Раз некоторые вещи нужны не всем, может вобще не выкладывать моды и хаки?
Скорее всего так и поступлю, на 4dle много чего изменилось, в том числе и юзеры.

Данный хак очень полезен для блоггеров, на варез сайтах согласен - не нужен.

Написал nickon, 7 марта 2010 в 21:46 плохой комментарий   -2   хороший комментарий
Новостей: 230, комментариев: 476, Администраторы
Карма: 27±
Я например тоже не вижу смысла в данном хаке, но кому нужен, тот молча заберёт и тихонько скажет спасибо victory личное дело каждого, имхо всем никогда не угодиш ...

Написал ПафНутиЙ, 7 марта 2010 в 22:30 плохой комментарий   +1   хороший комментарий
Новостей: 25, комментариев: 330, Пользователи
Карма: 16±
Спасибо, плюсик в репу поставил, а хак поставлю себе в блог.

Написал demzyk, 8 марта 2010 в 21:36 плохой комментарий   +1   хороший комментарий
Новостей: 30, комментариев: 1431, Пользователи
Карма: 22±
Я вроде как тоже писал))

ВСех с праздником!

Написал Hacker`, 8 марта 2010 в 23:30 плохой комментарий   0   хороший комментарий
Новостей: 3, комментариев: 46, Пользователи
Карма:
demzyk,
Я понимаю что вы администратор, но 8 марта - новость чуть выше: http://4dle.ru/main/1147158228-pozdravljaem-s-8-marta.html
ad

Написал demzyk, 9 марта 2010 в 15:41 плохой комментарий   +1   хороший комментарий
Новостей: 30, комментариев: 1431, Пользователи
Карма: 22±
Нет, я имею виду, что когда-то писал статью про граватар. Потом еще кто-то и еще кто-то)) сколько их то..

Написал FeAlSe, 9 марта 2010 в 03:05 плохой комментарий   +1   хороший комментарий
Новостей: 0, комментариев: 15, Пользователи
Карма:
Hacker`, молодец, я в своё время тоже ставил на блог его и писал про интеграцию. Может кому-то будет проще, нашёл статью свою - http://www.fealse.ru/go/166-integriruem-gravatar-v-dle.html

Написал Hacker`, 10 марта 2010 в 22:50 плохой комментарий   0   хороший комментарий
Новостей: 3, комментариев: 46, Пользователи
Карма:
Понял о чем вы :)
Нашел еще 2 новости на твоем блоге и еще на одном для старой версии дле.
Ну теперь и полная интеграция ad

Обратите внимание на /templates/Simple/images/noavatar.png!!!!
Движок заменил {_THEME} на тему, используемую на данном сайте.
Сравните 2 новости: http://whymax.ru/scripts/6-gravatar-in-dle.html
УЧИТЫВАЙТЕ ЭТО ПРИ УСТАНОВКЕ ХАКА!!!!!
Скорее всего на 4дле старая версия двига, в которой данный баг не пофиксен.

Написал Граф, 14 марта 2010 в 00:28 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 3, Пользователи
Карма:
Что то, я думаю, думаю... не как додуматься не могу. А если с переменной или? Чтоб для тех кто хочет свои грузили, а для других интеграция.

Написал Hacker`, 14 марта 2010 в 11:56 плохой комментарий   0   хороший комментарий
Новостей: 3, комментариев: 46, Пользователи
Карма:
А почитать про хак???
Если у пользователя нет собственного аватара, то отображается Gravatar, если и он отсутствует, то стандартное изображение "нет аватара".

Написал freinserj, 16 октября 2011 в 21:49 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 2, Пользователи
Карма:

Информация



Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
Анализ Тиц и PR сайта