Выводим модуль внутри компонента Joomla
В шаблоне компонента мы должны использовать PHP класс Joomla под названием JModuleHelper и его методы getModules и renderModule, например:
jimport( 'joomla.application.module.helper' ); // подключаем нужный класс, один раз на странице, перед первым выводом
$module = JModuleHelper::getModules('our-module'); // получаем в массив все модули из заданной позиции
$attribs['style'] = 'xhtml'; // задаём, если нужно, оболочку модулей (module chrome)
echo JModuleHelper::renderModule($module[0], $attribs); // выводим первый модуль из заданной позиции
Обратите внимание, этот код нужно использовать если вы планируете выводить в этой позиции один модуль, если их будет несколько, то нужно делать так:
jimport( 'joomla.application.module.helper' );
$modules = JModuleHelper::getModules('our-module'); // изменили название переменной с единственного на множественное число для понятности
$attribs['style'] = 'xhtml';
foreach($modules as $module){ // в цикле перебираем и выводим все модули
echo JModuleHelper::renderModule($module, $attribs);
}
Не забывайте о том что внутри модуля в настройках модуля по прежнему стоит указывать приаязку к страницам пунктов меню.
Для того чтобы в нужном месте привязать вывод контента использую суфиксы страницы примерно вот в таком ключе:
if ($this->pageclass_sfx == '_meropr_list') : ?>