Комментарии в MODX Revolution. Quip.

Опубликовано: 29 Авг 2014

В MODX Revolution есть несколько пакетов, предназначенных для организации вывода и создания комментариев. Самый распространенный и старейший - «Quip».

Установка производится из репозитория в несколько кликов.

В шаблоне (или чанке), который планируется использовать для ресурсов с комментариями, прописываем 2 сниппета:

[ [!Quip?
&thread=`kommentarii-v-modx-revolution.-quip-65`
&useGravatar=`0`
&dateFormat=`%d %b %Yг. в %H:%M`
&tplComment=`comment`
]]

[ [!QuipReply?
&thread=`kommentarii-v-modx-revolution.-quip-65`
&moderate=`0`
&tplAddComment=`new-comment`]]

Первый сниппет отвечает за вывод комментариев, второй за форму создания нового комментария. Рассмотрим параметры:

thread - важнейший параметр, должен представлять из себя уникальный идентификатор ресурса, к которому будет привязываться комментарий.

Многие делают ошибку, формируя этот идентификатор из названия ресурса (pagetitle). Этого не стоит делать по следующим причинам:

  • Quip не будет выводить комментарии к ресурсам, название которых содержит кавычки.
  • При смене названия ресурса все комментарии, связанные с ним, будут потеряны.
  • Вы можете нарваться на ошибку «quip.thread_err_nfs» при управлении темой в комментариях Quip MODX Revolution. Возникает она из-за использования кириллицы в уникальном идентификаторе «thread».

Чтобы избежать подобных проблем, я рекомендую формировать его из псевдонима (alias) и идентификатора ресурса (id).

useGravatar - 0, если не требуется выводить аватар пользователя и 1 - если требуется. Аватар берется с сайта gravatar.com. На этом сайте можно привязать к своему почтовому аккаунту маленькую картинку. В большинстве случаев, при оставлении комментария пользователь должен вводить свой e-mail. «Quip» проверяет, есть ли на сайте gravatar.com картинка, соответствующая e-mail'у комментатора. Если есть, то выводит её, а если нет - выводит аватар по умолчанию.

dateFormat -  формат выводимого времени, когда был оставлен комментарий.

tplComment - чанк, содержащий оформление выводимого комментария.

moderate - указывает, показывать ли оставленный комментарий сразу, или только после одобрения модератором.

tplAddComment - чанк для оформления формы ввода нового комментария.

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

Вывод последних комментариев в «Quip» MODX

Осуществляется вызовом сниппета:

[ [!QuipLatestComments?
&tpl=`latestCommentTpl`
&limit=`3`]]

limit - указывает, сколько последних комментариев выводить; tpl - чанк оформления одного «последнего» комментария. Его содержимое представляет из себя плейсхолдеры, вывод которых оформляется с помощью html и CSS. Вот пример:

<a class="latest_comment_theme" href=""> </a>
<div class="latest_comment_body"> </div>

 <div class="LastComment">
<span class="latest_comment_author"></span>
<span class="latest_comment_ago"></span>
</div>

В этом чанке выводится название ресурса с комментарием, текст комментария, урезанный до 55 символов, имя автора комментария и дата создания с форматом вывода.

Вывод количества комментариев «Quip» MODX

Иногда требуется к описанию поста вывести количество комментариев. Чаще всего краткие описания делаются на главной странице. Тогда в шаблоне, отвечающем за формирование описания, прописываем сниппет:

[ [!QuipCount?
&thread=`-`]]

Комментарии (3)

  1. Марина:
    28.08.2017г. в 22:31

    Здравствуйте! Возможно ли удалить параметр &dateFormat=`%d %b %Yг. в %H:%M` в настройках сниппета Quip? Будет ли корректно работать данное приложение?

  2. Наталья:
    30.08.2017г. в 13:53

    Здравствуйте. Да, можно. &dateFormat=`%d %b %Yг. в %H:%M` - это показатель того, в каком формате выводить дату комментария.

  3. Анна:
    29.08.2018г. в 13:37

    После обновления revo до 2.6.5 и компонента Quip, все комментарии на фронте остались, а в админке исчезли. И новые туда не поступают. С чем может быть связано? Ткните носом, пожалуйста, а то 2 дня ковыряюсь, не могу понять, что не так. Переустановка revo и компонента не помогает.


Оставить комментарий




Разрешённые теги: <b><i><br>Добавить новый комментарий: