Методы вывода модулей по определенным условиям

( 0 Votes ) 

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

Итак, в начале файла шаблона index.php после строчки defined( '_JEXEC' ) or die( 'Restricted access' ); объявить следующие параметры:

$option = JRequest::getVar('option', null);
$view = JRequest::getVar('view', null);
$task = JRequest::getVar('task', null);
$layout = JRequest::getVar('layout', null);

Именно по значениям этих параметров мы будем выводить или нет необходимые части шаблона.

Определив, например, колонку которую необходимо скрыть и соответствующие для это условия можно добавить в шаблон сайта следующий блок кода:

<?php if( ($this->countModules('right') ) && ($option!='com_fireboard' && $option!='com_artforms' && !($view=='article' && $task=='edit') && !($option=='com_content' && $view=='article' && $layout=='form'))) : ?>
<div id="right"><jdoc:include type="modules" name="right" style="xhtml" /></div></div>
<?php endif; ?>

В результате правая колонка не показывается, если активный компонент либо FireBoard ($option!='com_fireboard') либо ArtForms ($option!='com_artforms') или статья ($view=='article') находится в режиме редактирования ($task=='edit').

Этот пример может быть применен во многих других ситуациях, если разобраться какие части URL определяют параметры option, task, view и layout. Для примера приведем URL с параметрами использованными в нашем условии чуть выше:

/index.php?Itemid=62&option=com_fireboard

/index.php?task=edit&Itemid=71&option=com_content&id=56%3Amyarticletitle&view=article

А вот еще пример кода, как показать модуль только на странице полного просмотра статьи:

<?php if ($view != 'article') { ?>
<jdoc:include type="modules" name="footer" />
<?php } else {} ?>

wmdn.ru


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


Защитный код
Обновить

Рекомендую!

Новые комментарии

  • Отличная серия уроков! Спасибо огромное))) Подробнее...  
  • СПАСИБО ЗА ПЛАГИН ...очень полезны плагин. :lol: Подробнее...  
  • Могли бы подсказать что необходимо сделать в настройках контакт + меню в поле form name + event. так ... Подробнее...  
  • Да, поддерживает. На сайте разработчика можно скачать файлы для Joomla 1.5 Подробнее...  
  • Добрый вечер Богдан спасибо за видео, подскажите джумла версии 1,5,22 поддерживает этот компонент ... Подробнее...

Сообщения с форума

RSS лента новых уроков

Кликните по иконке, чтобы получать новые уроки по RSS каналу

RSS-подписка на новые уроки сайта Joomla-School.com

Или введите email, чтобы получать ссылки на новые уроки в свой ящик

Добавить в Google Reader

Читать в Яндекс.Ленте



Сейчас на сайте

Сейчас один гость и ни одного зарегистрированного пользователя на сайте

Нет