Куда идем?

Знаете, странное дело, на дворе уже 2013 год, а нормального компонента комментариев для Joomla (кроме, конечно, JComments) как не было, так и нет. Делая очередной сайт на Joomla 3, понадобилось добавить какую-то систему комментариев. Поскольку сайт собственный, можно было выбирать. В статье описаны муки поиска и выбора системы комментариев для Joomla 3, а также нестандартное решение, которое было решено использовать.

Нужна возможность оставлять комментарии в Joomla

Задача классическая: есть статья, требуется дать пользователям возможность делиться впечатлениями о ней. Нужна возможность комментирования. Что имеем на сегодняшний день?

Во-первых, нужно определиться с принципом хранения комментириев. Я бы выделил три подхода.

1) Виджеты социальных сетей

Система популярная и всем известная. На сайт вставляется скрипт от Вконтакте, Facebook или другой социальной сети и пользователи получают возможность оставлять комментарии к странице, используя свой аккаунт в социальной сети.

Достоинства:

  • нет нагрузки на сервер и БД. Всё храниться и обрабатывается на серверах социальных сетей;
  • удобно для пользователей, обычно всегда авторизованных в социальных сетях. Не нужно вводить подтверждение и прочие вещи.

Недостатки:

  • комментарии, по сути, принадлежат социальной сети;
  • комментарии не индексируются поисковыми роботами, т.к. используется JavaScript.

2) Система-интегратор комментариев с социальных сетей

Очень интересное решение. Компания Х использует свои сервера для получения комментариев с различных социальных сетей, объединяет их в единую базу, и затем выводит на сайте пользователя в виде единственного дерева. Пример такой системы: cackle.me.

 Достоинства:

  • нет нагрузки на сервер и БД. Всё храниться и обрабатывается на серверах компании Х;
  • невероятно удобно для пользователей. Можно использовать практически любую социальную сеть для авторизации.

Недостатки:

  • комментарии, по сути, принадлежат социальным сетям и компании Х;
  • комментарии не индексируются поисковыми роботами, т.к. используется JavaScript;
  • требуется помесячная оплата.

3) Компонент комментариев для Joomla

Стандартное решение, позволяющее пользователям оставлять комментарии, используя функционал сайта.

Достоинства:

  • все комментарии хранятся в базе данных сайта и принадлежат его владельцу (в первую очередь, конечно, пользователям, оставлявшим их, но тем не менее);
  • комментарии индексируются поисковыми системами.

Недостатки:

  • увеличение нагрузки на сервер и базу данных;
  • не слишком удобно для пользователей (приходится авторизовываться на сайте или вводить защиту от спам-роботов).

Такие есть варианты. Дальше каждый сам решает, что выбрать. Лично я для себя выбираю только третий вариант. Может комментариев будет не так много, как если бы использовался виджет Вконтакте, но они будут более осмысленными. Если человек совершил пусть и небольшое, но усилие, по вводу кода с картинки или регистрации/авторизации на сайте, вряд ли он будет писать какую-нибудь ерунду, в социальных комментариях такое встречается достаточно часто. Ну и наконец, комментарии индексируются поисковыми системами, а это означает, что кто-то по ним может прийти с поиска на сайт.

Компоненты комментариев Joomla. Что выбрать?

С типом комментариев определились. Используем расширение для Joomla и храним их в базе данных своего сайта. Теперь встает вопрос: какой компонент комментариев выбрать для Joomla 3? Каталог расширений Joomla дает нам вот такой набор.

Сразу отсекаем все расширения, не имеющие значка «Joomla 3» и требующих денег за использование. Что имеем в сухом остатке?

  • CComment Core – неплохой дизайн, но скудный функционал бесплатной версии;
  • Komentoна первый взгляд неплохой вариант, но нельзя удалять ссылку-копирайт в бесплатной версии и, главное, читаем эту ветку форума.

Есть еще несколько расширений, но ввиду их малой известности даже не рассматриваю.

Всем знакомый Jcomments как всегда вне конкуренции и как всегда очень медленно подтягивается к Joomla 3. Разработчик обещает выпустить новую версию, совместимую с Joomla 3 уже скоро, но пока ее нет.

В итоге приходим к тому, что для Joomla 3 нормальной системы комментариев нет. Невероятно, но факт. Что же остается?

Kunena + Discuss Plugin

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

Настройка

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

1) Устанавливаем компонент форума Kunena. Компонент форума Kunena и плагин Discuss можно скачать на этой странице.

2) Устанавливаем плагин Discuss.

3) Предполагается, что сайт уже имеет категории, в которых будет размещаться материалы. Если таковых нет, то создаем категории Joomla для материалов.

4) После того, как категории Joomla созданы, необходимо создать категории форума Kunena в соответствии с категориями Joomla. Смысл в том, что темы будут создаваться на форуме и чтобы все это как-то структурировать, необходимо чтобы на форуме также были необходимые категории. Хотя ничего не мешает вам создать одну единственную категорию на форуме и сваливать в нее все обсуждения материалов. Так или иначе, категории должны быть созданы.

5) Далее берем листочек и ручку (или открываем блокнот на ПК) и выписываем ID категорий Joomla и Kunena, сопоставляя их. ID категорий Joomla показаны в менеджере категорий Joomla:

kunena discuss

ID категорий Kunena можно найти в менеджере категорий Kunena:

kunena discuss

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

kunena discuss

В принципе, именно такая настройка не является обязательной. Можно поиграться с опциями и настроить что-то по своему усмотрению. Главное здесь – правильно выставить сопоставление категорий Joomla категориям Kunena. Во всплывающей подсказке подробно и по-русски написано, как это сделать.

7) Теперь важно разобраться с правами. Для начала нужно определиться, кто сможет оставлять комментарии. Я вижу это так: незарегистрированные пользователи (гости) могут оставлять комментарии(и, соответственно, создавать темы на форуме) только с вводом защитного кода. Зарегистрированные пользователи, которые прошли авторизацию, могут оставлять комментарии без защитного кода. Все это нужно настроить в Kunena.

8) Идем в Kunena –> Конфигурация –> Вкладка «Безопасность» и устанавливаем опцию «Разрешить гостям создавать сообщения» в «Да».

Здесь же, ниже устанавливаем настройки защитного кода:

kunena discuss

Для получения ключей достаточно иметь аккаунт google и перейти по ссылке справа.

9) Это еще не всё. Теперь нужно зайти в настройки каждой категории форума, где планируется вести обсуждение статей и выставить во вкладке «Разрешения категории» настройки следующим образом:

kunena discuss

Теперь, если все сделано правильно, вы увидите под статьей следующую форму:

kunena discuss

Комментарии выглядят так:

kunena discuss

На форуме это выглядит так:

kunena discuss

Внешний вид формы комментариев можно подправить через CSS, оформив как угодно. В результате мы получаем не только систему комментариев для сайта, но и автонаполняемый форум.

Об авторе
Wedal
(Виталий). Веб-разработчик полного цикла (Full Stack). Создатель и автор сайта Wedal.ru.
Основной профиль – создание сайтов и расширений на CMS Joomla.
Добавить комментарий

Комментарии  
8
:lol: вы меня так вдохновили, что я взялась за полную реконструкцию одного из проектов)
-2
Связи J3 + K2 для подавляющего сегмента вполне достаточно.
3
Виталий, спасибо за сравнение вариантов и за оригинальное решение. Единственно, смущает избыточность решения. А Komento похоже так быстро и выходит, что не отлажен как следует.
0
VARion, избыточность - да, но с учетом того, что многие сайты в любом случае подключают форум, получается даже наоборот.
3
Привет всем. А как же хваленый Seblod? На нем ведь тоже можно организовать систему комментариев. (примитивную по сравнению со спец расширениями). Если уж ставить Себлод, то и использовать нужно только его, иначе в нем смысла мало. Ведь он позиционируется как решение для замены многих других расширений. Он конечно заменяет, но примитивно, согласитесь. Я вот уже несколько дней не могу выбрать нормальное решение для Joomla 3. С одной стороны нужен cck и нужны комментарии. Ставить в дополнение к себлоду сторонние комменты? Нелогично как то.
В идеале хотелось как можно меньше расширений: Joomla + Seblod + плагины для материалов.
1
SergioJ, если ставить Seblod, то да, вариант.
2
Я считаю, что cck должен работать на любом сайте (кроме визиток, конечно), иначе, с накоплением материалов, без возможности фильтрации, сайт превращается в груду, в которой даже автору будет трудно что-либо найти
0
SergioJ, иногда бывает достаточно фильтрации по категориям и тегами. По крайней мере для блога самое оно. Сложные фильтры нужны для каталогов. Тут ведь есть и другая грань. CCK всегда дает бо'льшую нагрузку на сервер и большее количество запросов к БД.
1
По поводу нагрузки согласен. Но все же считаю, что фильтры это очень полезно. Например, захожу в какой либо блог по seo и хочу, например, почитать только свежие и самые популярные статьи про adsence, к примеру, но на этом блоге есть только категория "контекстная реклама" без вложений. И я вынужден долго копаться в куче ненужных мне материалов. Поиск по слову adsence тоже не улучшает ситуацию. А был бы там фильтр по дате, по количеству просмотров и по категории adsence, то я сразу бы получил все статьи, которые хочу. При этом автору при проектировании сайта не пришлось бы добавлять ни одного лишнего поля (все поля "родные для joomla"). Но автор об этом не позаботился, увы.
PS
Возможно я не прав. У меня просто сейчас особый период - я читаю книгу о Drupal и он открыл мне глаза на конструкторы контента и теперь все мысли об этом. :-) До знакомства с cck Drupal я даже не подозревал, что сайты могут быть такими. Теперь я смотрю на это совсем по другому. Считаю, что Drupal ставит голову веб-мастера в правильное положение. :-) Прощу прощения за оффтоп
1
Ошибся. Имелся ввиду adsenSe
1
SergioJ, а вот если бы вы сейчас читали книгу по PHP, был бы еще более особый период ;-) .
2
Есть прекрасный компонент SliComments. Да, он молодой. Однако это потрясающее творение отличного разработчика. Никаких глюков, очень быстрая работа, хорошие настройки и адаптивность.
0
Jcomments еще можно было бы рассмотреть.
1
tester13, Jcomments, безусловно, лучший их всех вариантов, но на момент написания статьи для Joomla 3 он еще не был выпущен.
0
т.е jcomments лучше связки kunena + discuss plugin? А можно описать практические плюсы? Или может у Вас есть статья на эту тему?
0
tester13, если нужны просто комментарии, то jcomments несомненно лучше. Если нужен еще и автонаполняемый форум, то можно рассмотреть вариант kunena + discuss plugin, хотя с ним гораздо больше проблем.
0
а кто-нить интегрировал k2 и kunena disscus??? Это вообще возможно? Есть, будут статьи по этому поводу?
0
tester13, нет, невозможно. Нужно переписывать плагин.
0
друзья, а можно как-то "автоматически" или хоть как-то, создать темы с уже созданым материалом?
я имею введу, что есть статья уже, и после установки плагинов, там нету функции комментировать, ибо она появляется только после создание нового материала..
п.с. а к virtuemart можно как-то прикрутить?
0
Sergeii, для созданного материала попробуйте открыть его на редактирование и сохранить. Возможно получится. К VM - только дописывать код плагина.
1

Цитирую Wedal:

Sergeii, для созданного материала попробуйте открыть его на редактирование и сохранить. Возможно получится. К VM - только дописывать код плагина.


с первым вопрос, вроде как решился. Может помогу кому-то. в настройках плагина Время начала темы и закрытия ставим "НЕТ ограничения" А вот как прикрутить к VM это проблема :( вставляю {kunena...} код не воспринимается, не подхватывается.. есть правда лучь надежды в интеграции с джумсоциал, а джум социал выводить в VM, но пока это я только прикинул в голове :)
1
Подскажите, пожалуйста, есть ли возможность интеграции Discuss Plugin и JoomGallery ?
0
Эдуард, не уверен. Скорее всего только переписыванием части кода.
1
А можно ли совместить первый и третий способы комментариев?
0
Лёлик, смотря что значит "совместить".
0
Какой компонент комментариев установлен на Вашем сайте? Это связка из этой статьи?
3
Сергей, нет. Это jComments.
0
Спасибо за прекрасную статью!
Столкнулся с такой проблемой - скачал последнюю версию у производителя, меню на английском, но это мелочи, на сайте пишет Posts in discussion: и название статьи. Работает нормально. Хотел перевести на русский, файл ru-RU.plg_content_kunenadiscuss.ini присутствует, но не переведен, поменял на русский ключ, все равно пишет на английском. Поменял на всякий случай в en-GB.plg_content_kunenadiscuss.ini на русский (думаю, может русский не подхватил) - на сайте все равно на английском. Странно. Может подскажете, где копать?
0
Александр, посмотрите эту статью: http://wedal.ru/uroki-joomla/tekst-na-sajte-joomla-kak-najti-dobavit-izmenit-udalit.html
Должно помочь.
0
Попробовал через переопределение. И по значению, и по константам почему то пишет, что не найдено. Причем константы пробовал разные из языкового файла, не находит. Буду искать в БД, хотя навряд ли разработчик поместил туда, тем более, что языковые файлы в плагине есть. Какая то загадка.
0
Интересно, нашел дубли файлов ru-RU.plg_content_kunenadiscuss.ini и en-GB.plg_content_kunenadiscuss.ini в папке администратор. При замене в файле ru-RU.plg_content_kunenadiscuss.ini на сайте ничего не меняется, при замене в en-GB.plg_content_kunenadiscuss.ini - на экран выходят нечитаемые символы. Получается, что плагин не подхватил русский язык, и буду пробовать - либо чтоб подхватил, либо смотреть варианты с кодировкой, чтоб сообщение было на русском.
0
Для тех, кто столкнется с подобной проблемой - помогла замена фразы в ключе PLG_KUNENADISCUSS_POSTS и перекодировка в UTF-8 без ВОМ файла en-GB.plg_content_kunenadiscuss.inien-GB.plg_content_kunenadiscuss.ini, который находится в папке администратор/language.
0
Добрый день!
Подскажите, пожалуйста, насколько такая структура нравится поисковикам? Ведь страница с комментариями и соответствующая ее тема форума будут по сути дублями с одинаковыми названиями и частью контента.
0
Сложно сказать наверняка. Думаю, это вполне нормально. У вас на каждой странице часть контента будет дублироваться, например, модули.
0
Здравствуйте, намучился с поиском комментариев, тут набрел на вашу статью, заинтересовало. Скажите, здесь сам форум выводится на всеобщее обозрение или в доступе только комментарии? в общем то мне пока не нужен форму, но вполне возможно что где-то в перспективе заинтересуюсь
0
dmtn, выводится на всеобщее. Можно, конечно, что-нибудь придумать, чтобы показывать только комментарии, но это странно, поскольку теряется весь смысл данного расширения. Тогда уж проще использовать старый добрый jComments.
0
С jComments как понял, сейчас ситуация не лучшая, разработчик ничего не чинит, а на новой joomla комментарии сообщение об ошибке в админке выдают.
Ни к тому же там надо css править, а у меня эти знания на уровне "со словарем", хотелось бы просто настроить и запустить без исправлений кода.
Кстати, а K2 сейчас как-то актуален (там же встроенные) или это уже тормоза на jpoomla ?
0
dmtn, с jComments всё не так плохо. Например, вы прямо сейчас пользуйтесь этим компонентом на wedal.ru. На Joomal 3 он работает стабильно из коробки. Стили там править не нужно, если, конечно, вас устраивает базовый внешний вид. К Joomla 4 уже будем смотреть, что станет с jComments, но думаю, сообщество перенесет. Ну и до полноценного перехода на Joomla 4 еще 1-2 года точно.


Цитата:

Кстати, а K2 сейчас как-то актуален (там же встроенные) или это уже тормоза на jpoomla ?

С последними версиями Joomla K2 стал вообще не нужен - практически весь функционал доступен теперь из коробки. Ну кроме, может, комментариев.