Представляем обновленный
модуль DLE UserBox v.1.3 - служит для вывода данных о любом пользователе и в любом месте сайта на
DLE 9.8 - 10.5 и выше. Модуль для DLE UserBox - это возможность вывести аватар с минимальной нагрузкой на сайт и другую информацию! Модуль полезен тогда, когда необходимо показать информацию о каком-либо юзере в произвольном месте вашего ресурса (В том числе на других страницах и не только в полной новости). К примеру это удобно на кулинарных сайтах, когда необходимо вывести данные об авторе рецепта непосредственно в месте рецептом или личным (коллективным) блогам.
Краткая информация о создании модуля UserBox v.1.3 :
В интернете есть
хак для dle с аналогичным функционалом, но только для вывода аватар пользователя, который добавил новость. У хака был существенный недостаток - это был хаком, то есть каждый раз нужно делать изменения движка с новой версии, а это автору модуля было не по душен. И вот на досуге автор ПафНутиЙ написал небольшой модуль, так и не увидевший свет.
С задачей модуль DLE UserBox v.1.3 справляется на ура, тут же пришла идея вывести общее количество публикаций пользователя, в то время, когда он был в последний раз заходил на сайте. Ну, а если я нужно вывести ещё и информацию о пользователе, а также оформить блок в стиль сайта? То в этом случаи нужен свой
шаблон dle для модуля UserBox.
В итоге, вышел простой модуль и перерос в чуть более сложный, который и получил название UserBox
- Подключение одной строкой.
- Вывод данных из профиля пользователя в любом месте сайта, на основе логина пользователя.
- Вывод дополнительных полей профиля пользователя (выводятся только те, которые не являются личными).
- Возможность использовать собственные шаблоны для вывода информации.
- Настраиваемая заглушка-аватар на случай, если у пользователя нет аватара и нужно вывести не стандартную заглушку.
- Кеширование результата работы модуля. Кеш создаётся с учётом логина пользователя, дефолтного аватара и используемого шаблона вывода модуля.
- Вывод информации о текущем пользователе вне шаблона login.tpl
- Вывод информации об авторе новости вне шаблона полной новости.
- Одна обязательная переменная в строке подключения - &userName. Именно через эту переменную модуль определяет для какого юзера выводить информацию.
- Добавляет один запрос на каждого выводимого модулем пользователя. Т.е. если выводить информацию об авторе новости в кратких новостях и на главной странице сайта выводится 30 новостей, которые опубликовали 10 пользователей (по три новости каждый) - то модуль при первом обращении к странице добавит 10 запросов в БД, после чего данные будут браться уже из кеша (при включенном кешировании на сайте). Если на второй странице попадётся пользователь с первой страницы, то запрос в БД на этого пользователя делаться не будет.
- Собственные теги для вывода в шаблоне. Отдельные теги сделаны для того, что бы не было конфликтов и для упрощения обработки этих тегов в модуле, что сократило кода процентов на 10-15 точно.
- Собственная папка с шаблонами. Так же для удобства использования.
- Выводятся не все данные. Т.к. выводить все данные о пользователе не имеет смысла, а также в целях экономии ресурсов сервера выводятся следующие данные:
1. email - Email пользователя
2. name - Логин
3. news_num - Кол-во новостей
4. user_id - ID пользователя
5. comm_num - Кол-во комментариев
6. user_group - Группа (форматированный вывод с префиксами и суффиксами)
7. lastdate - Дата последнего посещения сайта
8. reg_date - Дата регистрации
9. info - Информация о пользователе
10. foto - URL аватарки (или настраиваемая заглушка)
11. fullname - Полное имя
12. land - Место проживания
13. icq - Номер ICQ
14. Дополнительные поля
Полный список поддерживаемых модулем тегов приведён в шаблоне userbox/dafault.tpl
Установка UserBox v.1.3:
1. Распаковать содержимое папки upload из архива в корень сайта, при этом не забывайте переименовать папку THEME в соответствии с названием текущего шаблона сайта
2. В нужном месте любого шаблона сайта прописать:
{include file="engine/modules/userbox.php?&userName=login"}
где login - логин пользователя.
3. Всё!
{include file="engine/modules/userbox.php?&userName={login}"}
выведет информацию о авторе, если эту строку прописать в шаблоне новости (краткой или полной) или комментария (к примеру можно вывести рейтинг пользователя).
{include file="engine/modules/userbox.php?&userName=this"}
выведет информацию о текущем пользователе, эту конструкцию можно использовать для вывода информации о текущем пользователе вне шаблона login.tpl.
{include file="engine/modules/userbox.php?&userName=thisNewsId"}
выведет информацию об авторе новости при просмотре полной новости (при этом добавится один запрос). Подобная конструкция нужна на случай вывода вне шаблона полной новости (например в main.tpl). При выводе в шаблоне полной новости используйте &userName={login}
{include file="engine/modules/userbox.php?&userName=Бот&template=newtemplate&defAvatar=images/picture.jpg"}
Выведет информацию о пользователе с логином Бот, для вывода будет использован шаблон, лежащий в папке userbox/newtemplate.tpl, при этом если у пользователя нет аватарки (или не задан gravatar в настройках) - будет выведено изображение из папки images/picture.jpg.
Переменные строки подключения
&userName=user - Ия пользователя (Если указать &userName=this - будет выведена информация о текущем пользователе.)
&defAvatar=images/image.jpg - дефолтная заглушка аватара.
&template=mytemplate - шаблон вывода.
UserBox v.1.3
Автор: ПафНутиЙ
Версия
DataLife Engine: 9.8 -
dle 10.4 и выше для
dle 10.5Скачать DLE Модули из раздела у нас, как новую версию модуля UserBox v.1.3 CP1251 и UTF-8
Userbox-master-DLE_cp1251_utf8.zip [33,73 Kb] (cкачиваний: 225)
Комментарии 2