Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля
26 марта в 11:00 МСК: презентация новой версии Netcat 6 Презентация Netcat 6

Комментарии. Подключение и настройка.

Модуль "Комментарии" присутствует во всех редакциях, начиная с Corporate.

 

1. Модуль "Комментарии".

 

Начнём с подключения модуля комментариев к новостям, далее рассмотрим настройки модуля.

Для начала необходимо прописать данный код:

$nc_comments = new nc_comments($cc);    

в системные настройки того компонента, который вы используете (каталог товаров, статьи, новости и т. д.). Этим действием мы привязываем текущий компонент раздела к модулю комментариев.

Теперь остаётся только добавить сам блок комментариев в нужное место страницы (как правило это место после публикации) и прописать там короткий код:

<?=(nc_module_check_by_keyword("comments") ? "<div class='nc_comments'> ".$nc_comments->wall($f_RowID)."</div>" : null)?> 

В данном случае так же происходит проверка на предмет того, установлен ли модуль комментариев в вашу копию системы. Если вы уверены в том, что модуль установлен, можно укоротить код до:

$nc_comments->wall($f_RowID)    

Переменная $nc_comments задаётся произвольно. На данном этапе ваша форма будет выглядеть примерно таким образом:


Рис.3 - Форма комментирования

Для того, чтобы в списке объектов вывести количество комментариев нужно прописать код:

$nc_comments->count($f_RowID)   

Так же вы можете указать дополнительные параметры для вывода блока комментариев следуя шаблону:

$nc_comments->wall($p1,$p2,$p3,$p4)

где:

  • $p1 - идентификатор объекта (новость, статья, товар), к которому выводятся комментарии. Как правило указывается значение $f_RowID
  • $p2 - идентификатор шаблона ,с помощью которого осуществляется вывод комментариев
     

    Рис.4 - Как узнать ID шаблона
     
  • $p3 - Указываем с какого комментария начинать вывод.
  • $p4 - Сколько выводить комментариев

Указав значения для $p3 и $p4, можно организовать постраничный вывод комментариев:

$nc_comments->wall($f_RowID,1,0,10)

то есть выводим комментарии, используя шаблон с ID=1 и будут выведены комментарии с 1 по 10.

Комментарии подключены. Рассмотрим настройки модуля. Из некоторых особенностей можно выделить следующие пункты:

  • Добавление/удаление комментариев реализовано с помощью Ajax, то есть все операции производятся без полной перезагрузки страницы.
  • Вы можете запретить показ блока комментариев в избранных разделах, а так же выставить необходимый уровень разрешений:

Рис.5 - Настройка комментариев в разделе

Теперь можно перейти в настройки модуля и посмотреть на то, что можно поменять. Для перехода в настройки модуля перейдите в меню "Настройки: Настройки модуля: Комментарии" и выберите вкладку "Комментарии".

Первое, что вы увидите - это Шаблон вывода комментариев. Вы можете, на основе стандартного, добавить свой шаблон и внести необходимые изменения в него: добавить стили, подредактировать панельку с bb-кодами и другое.

Если модуля "Комментарии" нет, можно воспользоваться упрощенным функционалом компонентов.

 

 

2. Компонент "Интерактив: Комментарии".

Нужно создать дополнительный шаблон данных - "Комментарии", в который добавить поля - "Текст комментария" (текстовый блок), "Имя", "E-mail", "Номер новости" (Число) и любые другие на ваше усмотрение. Создать выключенный раздел "Коментарии" и подключить к нему соответствующий шаблон данных. Не забудьте установить доступ на добавление в данный шаблон - для всех пользователей.


Рис.1 - Карта сайта

Затем, необходимо поставить ссылку на добавление коментария из списка новостей/полного текста новости. Ссылка прописывается статически (не переменной) приблизительно так: /news/comments/add_comment.html?id=$f_RowID. Необходимо создать альтернативную форму добавления коментариев в которой $f_RowID будет прописываться в скрытое поле "Номер новости".


Рис.2 - Форма комментирования

Отображать коментарии к новости можно в при отображении полного текста новости (на отдельной странице) при помощи функции s_list_class():

<?=nc_objects_list(123,456,"&id=$f_RowID")?>

123 - номер раздела "Коментарии"

456 - номер шаблона в разделе "Коментарии"

Теперь в шаблон "Коментарии" необходимо добавить специальную настройку, позволяющую отображать только коментарии к конкретной новости при подаче соответствующего значения в переменной $id. В системных настройках шаблона пишем:

if ($id) $query_where = "a.Message_ID='$id'";

 

Данный метод считается устаревшим по той причине, что существует новый, более функциональный и одновременно простой способ #1.

Описание проекта