LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
27.05.2012, 18:54:58 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Комментарии в модулях  (Прочитано 3502 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Alex Revo
Практически профи
*******

Репутация: +104/-0
Offline Offline

Пол: Мужской
Сообщений: 2004


« : 04.08.2008, 14:21:03 »

Коллеги, а возможно с помощью jcomments реализовать вывод комментариев справа от текста статьи или комментариев к самописному модулю?

Пример: _http://www.drive.ru/mazda/drive-test/2008/08/01/1502912/universal_pikcherz.html
Слева текст статьи, справа блок комментариев к ней. Мне кажется такая схема придает большую живость странице, нежели кдассическое расположение комментариев под статьей.
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #1 : 04.08.2008, 15:02:21 »

К модулю, в принципе никаких проблем не вижу - просто в модуле вставить код вызова комментариев типа:

Код
<?php
global $mainframe;
 
 $comments = mainframe->getCfg('absolute_path') . '/components/com_jcomments/jcomments.php';
 if (file_exists($comments)) {
   require_once($comments);
   echo JComments::showComments( 999, 'mod_somemodulename', 'Название комментируемого объекта');
 }
?>
 

В качестве первого параметра нужно некое уникальное число - например идентификатор объекта комментирования (можно по идее брать из переменных запроса), вторым параметром может быть любой текст - это группа комментариев. Когда мы добавляем комментарии к компонентам - там ставим название компонента, когда к модулям - в принципе любой текст латиницей и лучше без пробелов (отображаться нигде не будет), а последний параметр - это название комментируемого объекта (используется в RSS).

И все, будут показываться комментарии в этом модуле. Другое дело, надо следить, чтобы на одной странице не оказалось 2 экземпляра комментариев - работать не будут точно.

p.s. а вообще, приведенный пример интересен... это ведь не просто комментарии к статье, это комментарии к элементам статьи - к ее абзацам. Похожую штуковину недавно обсуждали на форуме
Записан
Alex Revo
Практически профи
*******

Репутация: +104/-0
Offline Offline

Пол: Мужской
Сообщений: 2004


« Ответ #2 : 04.08.2008, 15:11:52 »

Спасибо, smart, пока пойду по этому пути, потом покажу результат.
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #3 : 04.08.2008, 15:15:24 »

В принципе, все можно сделать намного проще. Если тебе надо именно к материалам, то сними нафиг с публикации мамбот контента, а вот в модуле вставь вызов кода, для компонента com_content (т.е. вторым аргументом укажи com_content), а вот первый и третий - ну простым запросом к базе можно узнать.
Записан
Alex Revo
Практически профи
*******

Репутация: +104/-0
Offline Offline

Пол: Мужской
Сообщений: 2004


« Ответ #4 : 12.08.2008, 17:05:27 »

Сделал модуль комментариев контента.

Работает только при отключенном мамботе JComments ContentBot.
Публикуется в любой позиции шаблона и выводит/принимает комментарии только при просмотре какого-либо материала.
Настроек не имеет. В rss идет заголовок статьи.

Особо не тестировал, демо пока тоже не могу показать. Если кому-то будет полезен архив во вложении.

Спасибо smart за подсказку способа реализации.
« Последнее редактирование: 12.08.2008, 17:15:28 от Alex Revo » Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #5 : 12.08.2008, 17:12:16 »

Хм, там есть ошибка, замени код:

Код
echo JComments::showComments( $mainframe->menu->componentid, 'com_content', $mainframe->menu->name);

на

Код
echo JComments::showComments( mosGetParam($_REQUEST, 'id', 0), 'com_content', $mainframe->menu->name);

Иначе он будет выводить все комментарии для указанного компонента, вместо того, чтобы выводить все комментарии, для текущего материала.
Записан
Alex Revo
Практически профи
*******

Репутация: +104/-0
Offline Offline

Пол: Мужской
Сообщений: 2004


« Ответ #6 : 12.08.2008, 17:19:27 »

Спасибо исправил.
Такое решение конечно лучше, но старое тоже работает у меня, componentid всегда был равен id материала.

* mod_jcom.zip (1.26 Кб - загружено 169 раз.)
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #7 : 12.08.2008, 17:23:31 »

componentid всегда был равен id материала.
он может совпадать иногда, но это случайность, данное значение соответствует идентификатору компонента в таблице jos_components и никакого отношения к идентификатору материала не имеет.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet