C момента выхода Joomla 1.6 прошло еще совсем немного времени, но я вижу все больше расширений, которые уже переведены или будут переведены в ближайшее время на новую версию этой CMS. Тем не менее, Joomla 1.5 никуда не денется и многие сайты даже сейчас делаются именно на ней. В этой статье я хочу рассказать про одно замечательное расширение для Joomla 1.5, которое позволяет очень гибко управлять модулями CMS. Даже более гибко, чем Joomla 1.6.
Хотели ли вы когда-нибудь вывести модуль только на странице с определенной статьей или категорией? А может быть только для определенного компонента, например, VirtueMart? Или же представьте: модуль показывается только в определенный день недели, или даже в определенную минуту, или только для определенных пользователей сайта(не групп, а именно пользователей!). Этого мало? Нужен верх свободы? Тогда выводите ваш модуль на любой странице сайта, выбранной по URL. Поначалу это кажется фантастикой, но для Joomla 1.5 создано расширение, позволяющее делать все это буквально за пару кликов. И оно бесплатное. Интересно? Тогда читайте дальше…
Для решения задач, подобных описанной выше, Joomla не предусматривает встроенных инструментов администрирования. Если знания php позволяют, то для небольших задач можно обойтись правкой кода шаблона, но если знаний нет, или подобных модулей довольно много, незаменимым может оказаться расширение Advanced Module Manager.
Advanced Module Manager я буду называть именно «расширение», а не компонент, модуль или плагин. Реально это компонент и плагин, но «расширение» подходит все же больше. Advanced Module Managerвносит изменения в админку сайта, а именно в менеджер модулей Joomla и все, что с ним связанно. Это расширение создано для того, чтобы помочь администратору сайта более гибко управлять модулями.
Начнем со ссылок на скачивание Advanced Module Manager. Вот ссылка на сайт разработчика, а вот на страницу в каталоге Joomla. Редкий случай, но советую зайти именно на сайт разработчика. Этот сайт, к слову говоря, мне очень нравится. Все максимально доступно и удобно. На страничке, которая откроется по ссылке, можно будет прочитать описание расширение, посмотреть скриншоты и примеры, а также скачать Advanced Module Manager и русификацию к нему. После установки Advanced Module Manager менеджер модулей будет выглядеть следующим образом:
- возможность просмотра настроек любого модуля во всплывающем окне(функция сомнительная, но кому-то может понравиться);
- возможность просмотра дополнительных примечаний по каждому модулю(это удобно, если модулей много);
- дополнительные фильтры отображения модулей по уровню доступа к модулю и по связи модуля с пунктами меню.
Но это все мелочи. Самое интересное начинается когда мы заходим в настройки любого из модулей. Вот так теперь выглядит окно редактирования модуля:
В окне «Подробности» появилась опция «Скрыть пустой модуль» – используется для предотвращения вывода рамки модуля, который ничего не содержит. Кроме того немного изменилась форма выбора позиции модуля и добавилось поле описания, текст из которого будет показан во всплывающей подсказке к модулю(см. выше). В окне «Параметры» появилась вкладка «Отображение модуля по условиям». В ней-то и хранится самое интересное:
В самом верху вкладки мы видим две опции:
– Условия из модуля – позволяет наследовать условия от другого модуля. Опция очень удобна, если одни и те же условия нужно задать большому количеству модулей. Чтобы по десять раз не устанавливать все точки в нужное место, достаточно просто выбрать здесь модуль, настройки которого будут применены к текущему модулю.
– Режим сравнения условий – есть два режима «И» и «ИЛИ». В случае «И» модуль будет показан только тогда, когда выполняются все условия, указанные ниже. В случае «ИЛИ» модуль будет показан когда выполняется хотя бы одно из условий.
Дальше идут всевозможные условия отображения. Рассмотрим их ниже:
1. Пункты меню.
Практически то, что и было в стандартном менеджере, но с некоторыми добавлениями.
2. Материалы.
3. Компоненты.
Список компонентов, которые можно связывать с модулем. Набор компонентов не велик, но функциональность Advanced Module Manager позволяет сделать подобную фильтрацию и для других компонентов – была бы смекалка.
4. URL.
Список URL для которых модуль будет/не будет показан.
5. Интернет-обозреватели.
Список браузеров пользователей для которых модуль будет/не будет показан(Еще один способ намекнуть владельцам IE6, что пора бы обновить браузер).
6. Дата и время.
Здесь мы можем задать любые временные интервалы в которые модуль будет показан/скрыт.
7. Пользователи.
Здесь мы можем определить пользователей/группы пользователей, которые будут/не будут иметь доступ к модулю.
8. Языки.
9. Шаблоны.
Здесь задаются шаблоны, при которых модуль будет показан/скрыт.
10. PHP.
Кроме всего вышеописанного Advanced Module Manager имеет настройки. Их можно сразу не заметить, т.к. находятся они в п