Панель управления модулем («Настройки» — «Комментарии») поделена на 2 вкладки: «Настройки» и «Комментарии». Первая вкладка включает в себя вкладки по управлению общими настройками, шаблоном вывода, а также подписками и оповещениями, вторая — по управлению всем списком комментариев, конвертером из старых версий и средствами по оптимизации данных.
Вкладка «Общие настройки» состоит из трех блоков.
В первом («Основные настройки») настраиваются:
Во втором блоке («Премодерация») предложено выбрать степень премодерации для добавляемых комментариев. Положение «нет» означает, что премодерация отключена; «только для неавторизованных пользователей» — соответственно, добавляет комментарий выключенным для неавторизованного пользователя/включённым для авторизованного; «всегда» — означает премодерацию для всех пользователей, кроме пользователей с правами директора, супервизора и редактора с возможностью модерирования.
На месте комментария, попадающего под премодерацию, будет выведено сообщение, которое настраивается во вкладке «Шаблон вывода» в поле «Сообщение о премодерации комментариев».
Последний блок «Новые комментарии» состоит из двух настроек:
В этой вкладке можно добавить различные шаблоны оформления блоков комментирования. Решение о том, какой шаблон использовать, система принимает на основе идентификатора, переданного в функции вывода «стенки комментариев» или же, если такого идентификатора задано не было, использует шаблон по умолчанию. Это позволяет кастомизировать внешний вид вывода комментариев под различные задачи. Рассмотрим настройки подробнее.
В первом блоке «Шаблоны вывода комментариев» вынесен выпадающий список предустановленных шаблонов системы. Для добавления нового шаблона следует выбрать последний пункт списка «новый шаблон вывода». Если были внесены изменения в настройки текущего выбранного шаблона — следует нажать кнопку «Сохранить», иначе настройки не будут сохранены.
В блоке «Настройки шаблона вывода» устанавливается внешний вид всех блоков комментирования. Почти в каждом блоке присутствуют свои макропеременные, которые система обрабатывает при выводе блока. Например, макропеременная %USER_ID в блоке «Блок вывода комментария» превратится при выводе в идентификатор автора комментария. Для блоков, в которых есть подобные макропеременные, будет указана таблица с именами этих переменных. Рассмотрим все настройки шаблона вывода поближе:
Примечание: здесь и далее по тексту жирным шрифтом выделены обязательные переменные
ВАЖНО: Контент префикса и суффикса должен быть вне основного контейнера комментариев DIV class='nc_comments'
блок вывода комментария — этот блок определяет, как следует выводить текст комментария. Ниже список макропеременных, доступных в этом блоке:
%ID — идентификатор комментария
%COMMENT — текст комментария
%IS_NEW — если комментарий новый, псевдопеременная равна 1
%USER_ID — идентификатор автора комментария из таблицы User
%USER_NAME — поле Login автора из таблицы User
%USER_AVATAR — ссылка на аватар пользователя
%GUEST_NAME — имя гостя, если при добавлении комментария он его ввёл
%GUEST_EMAIL — email гостя, если при добавлении комментария он его ввёл
%DATE — дата добавления комментария
%UPDATED — дата обновления комментария (редактирование)
%REPLY_LINK — ссылка ответа на комментарий, заполняется из блока «Ссылка на ответ»
%EDIT_LINK — ссылка на редактирования комментария, заполняется из блока «Ссылка на редактирование»
%DELETE_LINK — ссылка на удаление комментария, заполняется из блока «Ссылка на редактирование»
%REPLY_BLOCK — указывает в каком месте выводить блок ответов на комментарий
%LEVEL — уровень вложенности ответа, дл комментариев равен 0
блок вывода ответа на комментарий — этот блок определяет, как следует выводить текст ответа на комментарий. В этом блоке можно задать отступ от левого края, чтобы показать, что данный комментарий является ответом. Макропеременные аналогичны тем, что указаны выше для «Блока вывода комментария».
ссылка на комментирование — данная настройка определяет, что следует выводить в ссылке на комментирование. Изменение положения ссылки в «стенке комментариев» не предусмотрено. Ниже список макропеременных, доступных в этом блоке:
%ID — идентификатор ссылки
%ACTION — действие, например onclick="%ACTION"
%TEXT — текст ссылки или картинка
ссылка на ответ — данная настройка определяет, что следует выводить в ссылке ответа на комментарий. Макропеременные аналогичны блоку «Ссылка на комментирование», описанному выше.
ссылка на редактирование — данная настройка определяет, что следует выводить в ссылке на редактирование комментария. Макропеременные аналогичны блоку «Ссылка на комментирование», описанному выше.
ссылка на удаление — данная настройка определяет, что следует выводить в ссылке на удаления комментария. Макропеременные аналогичны блоку «Ссылка на комментирование», описанному выше.
блок добавления комментария или ответа — этот блок отображает форму добавления комментария. Ниже таблица макропеременных, доступных в этом блоке:
%FORM_ID — идентификатор формы добавления
%TEXTAREA_ID — идентификатор текстового поля
%TEXTAREA_VALUE — значение внутри текстового поля
%CANCEL_BUTTON_ID — идентификатор кнопки «Отменить»
%CANCEL_BUTTON_ACTION — действие кнопки «Отменить»
%SUBMIT_BUTTON_ID — идентификатор кнопки «Сохранить»
%ISBBCODES — логическая переменная, true если BB-коды разрешены
Поля для ввода гостем имени и email выводятся следующим кодом:
<span id='nc_comments_guest_name'> Ваше имя <input type='text' name='nc_comments_guest_name'></span> <span id='nc_comments_guest_email'> Ваш email <input type='text' name='nc_comments_guest_email'></span>
Внимание! атрибуты id и name у тегов span и input должны точно соответствовать приведённым выше.
блок редактирования комментария или ответа — этот блок отображает форму редактирования комментария. Макропеременные аналогичны блоку «Блок добавления комментария или ответа», описанному выше.
блок удаления комментария или ответа — этот блок отображает форму удаления комментария. Все макропеременные этого блока обязательны:
%FORM_ID — идентификатор формы добавления
%CANCEL_BUTTON_ID — идентификатор кнопки «Отменить»
%CANCEL_BUTTON_ACTION — действие кнопки «Отменить»
%SUBMIT_BUTTON_ID — идентификатор кнопки «Сохранить»
Следует отметить, что блоки «Блок вывода комментария», «Блок вывода ответа на комментарий», «Блок добавления комментария или ответа», «Блок редактирования комментария или ответа» и «Блок удаления комментария или ответа» обрабатываются PHP функцией eval(), что позволяет использовать PHP код внутри этих блоков.
суффикс «стенки комментариев» — позволяет разместить любой HTML-код в самом конце блока вывода «стенки комментариев».
шаблон вывода листинга комментариев — позволяет кастомизировать внешний вид ссылок «следующая страница» и «последняя страница». Дополнительно в макете дизайна можно определить массив $browse_comments такого вида:
$browse_comments['prefix'] = ""; $browse_comments['suffix'] = ""; $browse_comments['active'] = "<b>%PAGE</b>"; $browse_comments['unactive']="<a href='#' onclick='%NAV_ACTION'>%PAGE</a>"; $browse_comments['divider'] = " | ";
кнопка показа всех комментариев — задаёт внешний вид кнопки/ссылки показа всех комментариев. Доступна только 1 макропеременная:
%SHOW_ALL — действие кнопки «Показать все»
сообщение об ошибке — определяет внешний вид сообщения об ошибке. Сообщения об ошибке выводятся, когда заданы настройки, требующие ввод гостем имени и email (т.е. также проставлены галочки «обязательно»), но гость не заполнил одно или оба поля, не правильно введена катча и другие ошибки. Доступна только 1 макропеременная:
%WARNTEXT — сообщение об ошибке
сообщение о премодерации комментариев — определяет внешний вид сообщения. Сообщение выводится, когда в настройках включена премодерация для комментариев, добавляемых неавторизованными пользователями или для всех. Макропеременные отсутствуют.
кнопка перехода к новому комментарию — задаётся внешний вид кнопки. Кнопка автоматически не активна при включённом листинге комментариев. Доступна 1 макропеременная:
%NEW_COMMENT_BUTTON_ACTION — действие кнопки
Во вкладке находится управление всем, что связано с подпиской на новые комментарии:
Доступна подписка на комментарии — пользователи смогут подписаться но новые комментарии.
Ссылка на подписку — данная настройка определяет, что следует выводить в ссылке на подписку. Доступные макропеременные в этом поле:
Тема письма — шаблон темы письма-уведомления о новом комментарию.
Шаблон тела письма — шаблон письма, приходящий пользователям при новом комментарии. В теме и теле шаблона письма доступны следующие переменные: