Мне не нравятся ссылки типа "подробнее" и "столько-то комментариев" под каждым материалом Joomla. Мне больше нравится, чтобы данный счетчик отображался в инфо-зоне под заголовком материала, как это реализовано в некоторых компонентах типа EasyBlog, K2 и т.д. Но, чтобы добиться этого не обязательно использовать стороннее расширение, а просто достаточно обратиться к встроенному классу JComments и вывести результат в нужном месте. О том, как это сделать и пойдет речь сегодня. 

Для начала задаем путь к основному файлу компонента JComments в переменную $jcclass. Далее проверяем на ее существование, в случае если true - один раз подцепляем в тело нашего модуля, плагина, шаблона материала или еще куда вашей душе угодно. 

 $jcclass = JPATH_SITE . '/components/com_jcomments/jcomments.php';
if (file_exists($jcclass)) :
require_once($jcclass);
$comcount = JComments::getCommentsCount($displayData['item']->id, 'com_content');
endif;

При это в переменную $comcount при помощи функции getCommentsCount запишется только число комментариев, которые привязаны к ID материала Joomla. Далее в аадминке в меню Расширение - Языки - Переопределение констант нужно задать новую константу и соответствующий ей текст. Например, я установил языковую константу MY_COMMENTS и ее значение "Комментариев: " для русского, и "Comments: " для английского. 

Далее чтобы вывести наш счетчик комментариев - выведем саму переменную и текст где требуется:

 <?php echo ' ' . JTEXT::_('MY_COMMENTS'); echo $comcount;?>

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

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

Добавить комментарий