Контактная информация

По всем интересующим вас вопросам связывайтесь при помощи контактной информации приведенной на этой странице!

skype: metsof
email: accusser@gmail.com

В социальных сетях...

Форма обратной связи

Авторизация

Комментарии MODX Revolution. Создание комментариев в MODX Revolution

Сайдбар

Комментарии MODX Revolution. Создание комментариев в MODX Revolution

14 нояб. 2012

Создание комментариев в MODX Revolution

Продолжу беседу о создании и развитии блога при помощи системы управления контентом MODxRevolution. На сей раз расскажем о системе публикации комментариев к записям в блоге. Без сомнения, автору блога исключительно принципиально располагать возможностью обратной связи с собственными читателями, одним из наиболее известных вариантов которой считается комментирование записей.


В случае если создается блог на MODx у нас имеется 2 (даже 3) варианта: применять готовый компонент, составить систему самостоятельно, применять еще какое то решение. Версию написания собственной реализации системы комментариев я отвергаю вследствие несостоятельной трудозатратности. Не напрасно же мы применяем систему управления контентом. Из имеющихся компонентов для MODxRevolution имеется лишь Quip. Из других решений подойдут все, которые интегрируются путем применения JavaScript. К ним могут быть отнесены такие известные системы как Disqus и IntenseDebate.

Вначале я воспользовался для собственного сайта компонентом Quip(http://rtfm.modx.com/display/ADDON/Quip), настроил его под собственные надобности, модифицировал наружный облик, для того чтобы он коррелировал с дизайном веб-сайта и приготовился торжествовать. Однако не тут-то было. Когда начали появляться комментарии к статьям, я с изумлением открыл, что спустя определенное время они пропадают. Ни с того ни с сего. Попросту раз - и нет комментария. Ужаснувшись, что они потеряны на всегда, я открыл табличку с комментариями в базу данных и с радостью обнаружил, что они не удалены абсолютно и навсегда, а только помечены, как удаленные. Поменяв значение поля "deleted" с "1" на "0", я возвратил комментарии к жизни. Однако через пару дней обстановка повторилась. Я снова исправил комментарии, однако затем они опять пропали, и так длилось до тех пор, покуда мне это все не надоело. На форуме MODx у одного человечка была подобная неувязка как и у меня, однако действующих вариантов решения не было. Копаться в исходном коде Quip я не стал, и тут мой взгляд упал на систему комментирования Disqus.


Меня мгновенно же заинтересовал достаточно милый дизайн, а так же право авторизации как внутри системы Disqus (которая применяется на многих сайтов, в том числе такие большие как CNN, TechCrunch, FoxNews и прочие), так и при помощи Twitter, Facebook, Yahoo, применяя OpenID или обыкновенную для всех веб-сайтов форму "Имя - Почта - Сайт - Комментарий". При этом организовано все исключительно комфортно с точки зрения пользователя.


Используем Disqus

Зарегистрировался на сайте disqus.com предполагается ряд инструкций по установке кода в известные системы ведения блогов на подобие WordPress, Blogger, Joomla и остальные. MODx в их числе не было, однако мы не лыком шиты, в следствии этого переходим в раздел UniversalCode. После знакомства с разделом делается понятно, что система складывается из 2-ух модулей: сам же модуль комментирования, который надлежит применять на страничке с блогозаписью, и модуль, который выводит количество комментариев в определенном посте, который можно применять на самой страничке блога в ленте статей.

Осмыслим сначала с главным модулем для просмотра объяснений к статье и в сущности комментирования. Сделаем чанк, в который пристроим код, написанный на страничке установки Disqus, и дадим ему имя DisqusComments. В нем необходимо поменять переменную disqus_shortname, в коей определить краткое имя, избранное вами при регистрации, и лучше скорректировать переменные disqus_identifier и disqus_url для более легкой работы системы. Как идентификатор статьи можно применять ее id в MODx, к примеру так:


vardisqus_shortname = 'shortname_вашего_сайта';       vardisqus_identifier = '[[+id]]';       vardisqus_url = '[[+url]]';


Дальше, в шаблоне для отображения страниц постов из блога в необходимое место добавляем вызов этого чанка:

.. отображение содержания статьи ..


[[$DisqusComments? &id=`bounz_net_[[*id]]` &url=`[[++site_url]][[~[[*id]]]]` ]]

.. что-то еще ..


В этом случае я применяю как disqus_identifier конструкцию типа bounz_net_articleID, а переменной disqus_url присваиваю абсолютный адрес странички. Применение полного URL сопряжено с тем, что вначале, стараясь интегрировать Disqus с собственным сайтом, и располагая относительной адресацией страничек (в чанке заголовка прописан тег ), появлялась ошибка под час формировании постоянных ссылок на комментарии. А так как до сего мне уже довелось полностью отказаться от относительных ссылок в разделе Галерея (так как они криво функционировали с хеш-тегами), то было решено вообще всюду перейти на полную адресацию.


Однако это было лирическое отступление. Сейчас система комментариев включена в блог, их имеется возможность писать, читать, а так же и модерировать. Сейчас было бы хорошо выводить численность комментариев в главной ленте записей блога. Это исключительно легко сделать. Организуем в чанке, отвечающем за краткий вывод блого записи на основной страничке блога, последующую ссылку.

Комментарии

Мистика этой ссылки содержится в прибавлении хеш-тега #disqus_thread к ссылке на статью и прибавлении маленького javascript-кода в конец странички. В дополнение к хеш-тегу можно задать у ссылки аттрибутdata-disqus-identifier, который несомненно поможет Disqus отождествить статью. Вообщем говоря, имеется возможность обойтись и без него, тогда система будет определять статьи, базируясь на их URL. Однако в случае если адреса страничек со статьями переменятся (предположим, вы начнете применять ЧПУ), то все будет сломано. Чтобы подобного не приключилось, я прибавил данный атрибут. Подметьте, что он основывается точно так же, как и значение характеристики disqus_identifier в вызове скрипта комментирования. Фактически все готово.






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

  1. Алексей 15 июня 2014, 12:11 # 0
    1. андрей 04 марта 2015, 10:42 # 0
      Автору спасибо.
      1. Вадим 11 сентября 2015, 20:01 # 0
        Спасибо за статью. Проверяю как работает :D
        1. ModxJedi 01 февраля 2017, 11:46 # 0
          здесь по моему комменты на тикетах? Новичкам полезно бы знать. удобнее.
          1. Александр 01 февраля 2017, 11:54 # 0
            кому что удобнее да и задачи бывают разные

          Услуги по MODX Revolution

          Посмотреть все услуги

          Техническая оптимизация сайта

          Подробнее & Заказать

          Создание сайта на MODX Revolution

          Подробнее & Заказать

          Перенос сайта на MODX Revolution

          Подробнее & Заказать

          Продвижение сайта на MODX

          Подробнее & Заказать