Отображение модулей Joomla в любом месте

Joomla МodulesAnywhereСовсем недавно при смене шаблона своего блога столкнулся с проблемой отсутствия дополнительных  размеченных мест под различные модули Joomla в только что установленном шаблоне, а также с необходимостью внедрить модульные позиции в сторонние компоненты, в которых старая добрая уловка loadposition естественно не работает. Решение было как обычно найдено на сайте ребят из NoNumber - это плагин ModulesAnywhere. Что это такое, как его правильно едят и наглядный пример с моего блога, читаем и комментируем под катом этого поста.

Ну сначала нам нужно скачать данный плагин, кстати поэтому этот пост я добавил в раздел "плагины". Сделать это можно на официальном сайте разработчиков nonumber.nl, ну а удобнее это сделать из моего архива по ссылочке ниже:

icon Скачать ModulesAnywhere

1. Установка и настройка.

Архив нужно сначала распаковать. Там вы обнаружите 2 файла. Один собственно файл нашего плагина, а второй это его русская локализация. Устанавливаем оба файла как обычные расширения для Joomla через Расширения - Установить \ Удалить. Если все прошло гладко, то Joomla сообщит что все тип-топ подобными сообщениями, как на скриншотах:

ModulesAnywhere для Joomla 1.5

ModuleAnywhere для Joomla

После чего вежливо посоветует очистить кэш вашего браузера дабы вы смогли увидеть все изменения касаемые вашей админки. Далее идем и включаем плагин в менеджере плагинов, если конечно он не включился автоматически (у меня включился сразу):

alt

Ну после чего можно пойти и ознакомиться с настройками самого супер-пупер плагина щелкнув по его названию. Нашему взгляду откроется вот такое вот меню настроек ModulesAnywhere (соответственно на русском, если вы установили 2й файл из архива), нажмите клавишу F для просмотра скриншота в нормальном разрешении:

Настройки плагина ModulesAnywhere для Joomla

На что из настроек обратить внимание? Это уже конечно зависит от конкретного случая. Например если вы никогда раньше не встраивали модули в свои статьи путем loadposition то можете отключить этот дескриптор, так как этот плагин может встраивать модули и в материалы тоже. Можете указать свой тег для подрузки модулей, только обязательно латиницей. Вставлять HTML комментарии полезно, чтобы потом в исходном коде сгенерированной страницы через браузер глянуть корректно ли вы встроили тот или иной код в компонент, статью или остальные части сайта (да хоть в сам шаблон).

В общем страница настроек в самом начале включает мини руководство к действию, теперь же давай-те попробуем перейти к практике. Укажем дополнительное модульное место под нижний баннер в компоненте который называется DocMan и на котором собственно и работает мой файловый архив (сам модуль я заранее создал и опубликовал в несуществующей пока позиции bottom-banners).

alt

Что нам для этого нужно? Просто в нужном месте указать специальный тег modulepos (в примерах ниже я изменил на свой - moduleposition) c указанием названием места. Я назвал его соответственно bottom-banners. Т.е. нужно вставить вот такой тег с указанием позиции:

 {moduleposition bottom-banners} 

2. Встраиваем модульную позицию в сторонний компонент - на примере DocMan.

Куда вставлять уже требует от нас кое-каких представлений о структуре самого компонента, куда мы хотим запихнуть сие чудо. Так как компонент DocMan использует так называемые темы, а использую я стандартную, то я как раз и пошел копать ее самую. Так как я хотел добавить дополнительное место под модуль в самый них категорий компонента, я нашел файл отвечающий за это. Им я оказался некий list.tpl.php в папке components/com_docman/themes/default/templates/categories. Я добавил в 44 строку файла (в самый низ) нашу строчку:

 {moduleposition bottom-banners} 

И все, после этого баннер в разделе Скачать появился внизу категории и подкатегорий, что доказало что плагин действительно работает. Да и в конце-концов, ниже стоящий баннер тоже делу рук плагина ModulesAnywhere:

Баннер

 

3. Встраиваем новую позицию модуля в  "Еще статьи" Joomla.

Далее мне захотелось что бы этот же баннер отображался уже внизу страниц моего блога над блоком "Еще статьи...", которые отображаются как раз в формате blog, т.е. это непосредственно главная страница, а также все страницы категорий из левого меню топики. Это уже не какой-то другой компонент, а сама Joomla. Точнее мой шаблон, который использует свои файлы разметки (многие современные используют свои, находятся они в папке шаблона в директории html/com_content/).

Открываем файл default.php в папке templates/ваш_шаблон/html/com_content/frontpage и экспериментируем со вставкой нашего кода в разные места, дабы модуль отобразился именно там, где нам нужно. У меня в шаблоне JA_Zinc получилось вставить код в конец 83 строки, после чего на главной странице сайта внизу появился мой баннер. Что же касается отображение на страницах категорий в формате блога, то тут уже нужно было подредактировать файл blog.php в папке templates/ваш_шаблон(у меня ja_zinc)/html/com_content/category/ и в конец 86й строки добавить строку плагина, после чего и на страницах категорий баннер аккуратно начал появлятся.

Если у вашего шаблона нет своих html файлов разметки, то он использует стандартные, поэтому нужно будет аналогично поизучать папочку components/com_content/views.

Из общих советой по добавлению строки плагина в код есть один, но очень важный, старайтесь чтобы {moduleposition} находился до или после открывающих или закрывающих тегов php. Дерзайте и у вас обязательно все получится!

  Понравилась статья ? Подпишись на RSS и будь всегда в курсе новых! Все обновления публикуются в Twitter! Следуйте за мной и будите всегда в курсе происходящего!
Баннер

Комментарии 

 
+1 #3 WMaster 23.05.2011 19:56
чувак :lol: спасибо, легко влепил код в шаблон одной галереи и теперь вывожу одни и те же модули с адсенс прям среди фоток! +++
 
 
-5 #2 Serg 29.04.2011 15:58
Чего не объяснил-то как следует, как пользоваться? И что кнопка в статье появляется "Вставить модуль". Через жопу все объяснил.
 
 
#1 Роман1 21.04.2011 03:34
Доброй ночи !
автор простите за тупой вопрос я первый раз буду вставлять в шаблон модули , можно ли по подробней с момента втавки кода/ниже последнего скрина/ куда, и где эти коды брать ? Зарание спасибо!
 

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


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

Авторизация

Опрос

Что мне сделать с Gold ключами для DepositFile?
 

Сейчас онлайн

  • Robot
  • Yandex
  • [Bot]

Архив по годам