Як додати модульну позицію у компонент Joomla!

Рейтинг користувача: 5 / 5

Активна зіркаАктивна зіркаАктивна зіркаАктивна зіркаАктивна зірка
 

Доволі часто виникає необхідність додати модульну позицію у компонет Joomla. Розглянемо необхідні дії на прикладі стандартного компонента Joomla! com_content.

В першу чергу нам слід убезпечити себе від того, що після оновлення всі зроблені нами зміни зникнуть. Для цього робимо наступні кроки - у теці шаблону створюємо теку html (якщо її ще немає), в ній створюємо теку com_content, в ній створюємо теку article в яку кладемо файл default.php, який беремо звідси: /components/com_content/views/article/tmpl/default.php. І от до нього ми будемо вносити зміни.

Стандартна конструкція,

Show/Hidden php code
View source
<jdoc:include type="modules" name="footer" style="xhtml"/>

яка згадувалася у попередньому матеріалі на цю тему, тут працювати не буде. Ця конструкція працює лише у шаблоні. Для компоненту існує інша конструкція. Щоб додати модульну позиція для одного модуля, вставте у потрібне місце цей код:

Show/Hidden php code
View source
  1. <?php
  2. jimport('joomla.application.module.helper');// підключаємо потрібний клас, один раз на сторінці, перед першимм виводом
  3. $module= JModuleHelper::getModules('your-module-position');// отримуємо в масив всі модулі з даної позиції
  4. $attribs['style']='xhtml';// задаємо оболонку модулів (module chrome)
  5. echo JModuleHelper::renderModule($module[0],$attribs);// виводимо перший модуль з даної позиції
  6. ?>

А для виводу кількох модулів слід скористатися наступним кодом:

Show/Hidden php code
View source
  1. <?php
  2. jimport('joomla.application.module.helper');
  3. $modules= JModuleHelper::getModules('your-module-position');// змінили назву змінної з одниної на множину
  4. $attribs['style']='xhtml';
  5. foreach($modulesas$module){// перебираємо та виводимо всі модулі в позиції
  6. echo JModuleHelper::renderModule($module,$attribs);
  7. }
  8. ?>

В яке місце вставляти дані коди - вирішувати вам. Я собі вставив після заголовку та перед пагінацією.

Надійний фріланс

Facebook

 
 

Google +

 

Реклама від Google