Модуль по странам для joomla

Содержание
  1. Модули для Joomla 3.4 и 2.5
  2. Minitek Wall Pro 3.9.5.4 & 4.0.21
  3. Quix Pagebuilder 2.7.9 & 4.0.0
  4. Joomla Articles Good Search 1.2.5 b0002 & 1.2.3 b0009
  5. Product Filter by Custom Fields 3.0.8
  6. DJ-MegaMenu 4.0.1
  7. Frequently Asked Questions 1.2.12
  8. Vik Restaurants 1.7.4
  9. Balbooa Forms Builder 2.0.5
  10. JoomRecipe 1.2.6.8
  11. Convert Forms Pro 2.8.1
  12. Cache Cleaner PRO 7.4.0
  13. User Testimonials 1.2.6
  14. Page Sections 2.0.9
  15. Image Gallery 3.0.33
  16. Events Calendar 3.0.7
  17. ConverseKit 2.0.5
  18. J2Store V3 PRO 3.3.16
  19. K2 Filter and Search 1.5.8
  20. Joom Donation 5.8.4
  21. Shack Forms 4.0.43
  22. Template Extension 1.0.31
  23. Joomla Articles Calendar 1.0.1 b0009
  24. K2 Contact 1.0.1 b0005
  25. RAXO All-mode PRO 1.9
  26. Shack Toolbox 3.0.10
  27. JUX Before After 1.0.1
  28. Responsive Grid for Articles 3.4.11 & 4.0.8
  29. JUX Instagram Feed 1.1.4
  30. Offlajn Layer Slider 6.6.077
  31. Carousel, Parallax or Full Page 1.0.31
  32. GeoIP v2.3.0 — геолокация для Joomla
  33. Другие расширения от RegularLabs.com
  34. Advanced Module Manager PRO 7.15.0
  35. Articles Anywhere PRO 10.6.0
  36. Modals PRO 11.8.0
  37. Better Preview PRO 6.4.0
  38. Cache Cleaner PRO 7.4.0
  39. Tooltips PRO 7.6.3
  40. Модули Joomla: Самое подробное руководство
  41. Содержание
  42. Что такое модули Joomla
  43. Стандартные модули Joomla
  44. Как установить модуль
  45. Сколько модулей может быть на странице
  46. Управление модулями Joomla
  47. Просмотр модулей Joomla
  48. Настройка модулей Joomla
  49. Позиции модулей
  50. Порядок модулей
  51. Связь модулей и пунктов меню. Вывод модулей на отдельных страницах
  52. Вывод модулей Joomla в разных частях сайта
  53. Как добавить позицию модуля в шаблон
  54. Как вставить модуль в материал Joomla
  55. Вставка модуля в компонент Joomla
  56. Вывести модуль в модуле Joomla
  57. Advanced Module Manager – вывод модуля на страницах, не привязанных к пунктам меню
  58. Ограничение на просмотр модулей
  59. Кэширование модулей
  60. Оформление модулей
  61. Суффикс класса модуля
  62. Стиль позиции модуля
  63. Макет модуля
  64. Альтернативный макет модуля
  65. Разработка модуля Joomla
  66. Модули Joomla и com_ajax
  67. Когда не стоит использовать модули
  68. Модуль с уникальной информацией для страницы каталога или интернет-магазина
  69. Модули html-кода в материалах Joomla
  70. Модули для текста (или меню) в несколько колонок
  71. Где скачать модули Joomla
  72. Бесплатные модули Joomla от Wedal.ru
Читайте также:  Атомный ледокольный флот стран мира

Модули для Joomla 3.4 и 2.5

Только оригинальные чистые файлы без скрытых ссылок. Регулярные обновления и пополнения модулей для Joomla. Быстрое скачивание «в один клик» на скорости в 100 Mbps

Minitek Wall Pro 3.9.5.4 & 4.0.21

Для сайтов, работающих на Джумла 3.х с установленными компонентами К2 и Jomsocial есть отличное расширение, позволяющее представлять контент максимально эффектно и эффективно — Minitek Wall. В нем вы сможете создавать .

Quix Pagebuilder 2.7.9 & 4.0.0

Quix Pagebuilder — это самый первый и лучший в своем роде конструктор сайтов для Joomla. Благодаря Quix Pagebuilder, вы сможете создавать сайты любой сложности используя лишь перетаскивание и вставку необходимых элеме .

Joomla Articles Good Search 1.2.5 b0002 & 1.2.3 b0009

Модуль Joomla Articles Good Search добавляет возможность фильтровать и искать по пользовательским полям Joomla. Этот модуль может фильтровать ваш контент по ключевому слову, тегу, категории, дате, автору и настраиваем .

Product Filter by Custom Fields 3.0.8

Плагин позволяет добавлять дополнительные поля для более точного вывода товаров на сайте под управлением Virtuemart 3. Также он даёт возможность делать свои собственные фильтры с помощью настраиваемых полей.

DJ-MegaMenu 4.0.1

DJ-MegaMenu — навороченный модуль меню для Joomla, который позволяет в индивидуальном порядке задать настройки для каждого из пунктов. Можно вставлять модули, регулировать количество строк и столбцов, несколько стилей .

Frequently Asked Questions 1.2.12

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

Vik Restaurants 1.7.4

Vik Restaurants – это расширение, созданное как система бронирования и заказов для ресторанов.

Структурно приложение разделено на две секции: ресторанный комплекс и заказ доставки. Создайте меню из блюд, котор .

Balbooa Forms Builder 2.0.5

Balbooa Joomla Forms Builder — это потрясающий компонент для Joomla, который позволяет создавать формы любой сложности и дизайна без каких-либо знаний CSS и PHP.

В компоненте есть своя очень удобная админка. В .

JoomRecipe 1.2.6.8

JoomRecipe — лучшее расширение, чтобы превратить сайт Joomla в книгу рецептов. Плагин позволяет дела .

Convert Forms Pro 2.8.1

Convert Forms Pro — это прекрасный конструктор форма для Joomla с великолепным адаптивным дизайном и гибкими настройками.

Никогда не было более простого способа привлечения потенциальных клиентов для ваших мар .

Cache Cleaner PRO 7.4.0

Иногда кэш сайта слишком быстро набирает «вес», с чем все веб-мастера активно борются. Одним из самых удобных способов борьбы будет использование модуля Cache Cleaner. Это расширение для CMS Joomla позволяет очистить .

User Testimonials 1.2.6

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

Page Sections 2.0.9

Создавайте страницы вашего сайта, сортируя его содержимое по настраиваемым разделам.

Ваши проблемы с созданием страниц контента с помощью Joomla закончились. С помощью этого расширения вы просто создадите разл .

Предоставьте на своем веб-сайте галерею изображений с высоким разрешением без ущерба для производительности вашего сервера. Начните с готовых к использованию моделей галереи, настройте все, что вы хотите, и выберите а .

Events Calendar 3.0.7

Календарь может быть лучшим способом отображения информации о событиях для ваших посетителей. В этом расширении вы сможете сделать это простым способом и большим стилем. Начните с выбора одной готовой к использованию .

ConverseKit 2.0.5

ConverseKit — это дополнение для социальной сети на основе EasySocial, которое расширяет его возможности, добавляя чат для пользователей.

Адаптивный дизайн и возможность общаться друг с другом в режиме ре .

J2Store V3 PRO 3.3.16

J2store – это простое в управлении расширение для Joomla 3, которое позволяет создать Интернет-магазин. Создание сайта электронной коммерции теперь стало еще проще.

Вы можете использовать материалы Joomla для .

K2 Filter and Search 1.5.8

Модель K2 Filter and Search позволяет фильтровать содержимое K2 по дополнительным полям, таким как: теги, категория, текст элемента и многие другие поля одновременно. Совместим с Joomla 3.x и последней верси .

Joom Donation 5.8.4

JoomDonation — это мощное и легкое в использование расширение для вашего сайта на Joomla, которое позволяет вам создавать пожертвования. Установив в плагин, вы сможете создать любое количество одноразовых или повторяю .

Shack Forms 4.0.43

Одно из самых популярных расширений в JED каталоге, работающее на AJAX и предоставляющее вашим посетителям красивую форму обратной связи. Неограниченное количество добавляемых полей, возможность загрузки файлов, 5 вар .

Template Extension 1.0.31

Создайте свой собственный шаблон без единой строчки кода!

С помощью этого расширения вы можете настроить весь шаблон вашего сайта. Определите стили текста, списки, ссылки, заголовки, цвета и интервалы. Настрой .

Joomla Articles Calendar 1.0.1 b0009

Модуль календаря для статей Joomla (native Joomla com_content) с возможностью фильтрации и поиска статей на основе стандартных полей дат или других настраиваемых полей (можно выбрать в параметрах модуля), даты создани .

K2 Contact 1.0.1 b0005

Модуль K2 Contact может помочь вам получить обратную связь от ваших клиентов о том, какие продукты или услуги они хотят.

Он основан на типах фильтров модуля K2 Filter & Search и может отображать все поля K .

RAXO All-mode PRO 1.9

RAXO All-mode PRO это самый мощный, комплексный инструмент для показа новостей и статей на Joomla сайте. Большой функционал и простота использования дают вам полную свободу показа Joomla контента так, как вам угодно. .

Shack Toolbox 3.0.10

Shack Toolbox — это лучший плагин для вывода контента для Joomla. Shack Toolbox имеет более 19 медиа-и маркетинговых интеграций, включая Facebook, Twitter, Google Maps, Instagram, iframe, статьи Joomla, K2, Zoo, .

JUX Before After 1.0.1

JUX Before After — это простое расширение Joomla, которое прекрасно показывает визуальные изменения между двумя изображениями (перед изображением и после изображения) на одном экране. В частности, замечательное расшир .

Responsive Grid for Articles 3.4.11 & 4.0.8

Адаптивный модуль последних материалов для Joomla с Ajax фильтрацией по категориям. Отлично работает как во всех современных браузерах и гаджетах, так и в старых не поддерживаемых разработках (например IE9 и ниже). Ра .

JUX Instagram Feed 1.1.4

Ленты JUX Instagram в точности удовлетворяют все потребности пользователей в фидах Instagram, такие как красивая презентация, загрузка фотографий и создание привлекательного набора изображений с гибким управлением раз .

Offlajn Layer Slider 6.6.077

LayerSlider — это высококачественный многоцелевой слайдер для создания галерей изображений, слайдеров содержимого и улетных слайд-шоу с эффектами, которые нужно увидеть. Используются передовые технологии. Имеет более .

Стиль и Шарм. Вот что нужно, чтобы привлечь внимание ваших посетителей. Показывайте на своем сайте привлекательные баннеры, содержащие изображения, цвета и тексты без необходимости углубленных знаний в дизайне. В .

Источник

GeoIP v2.3.0 — геолокация для Joomla

скачать архив для Joomla 3.6 | Размер: 1.1 МБ

Плагин GeoIP — это библиотека, которая позволяет использовать геолокацию.

Для корректной работы плагина Вам могут потребоваться установить следующие библиотеки: Advanced Module Manager Pro, Advanced Template Manager Pro, Content Templater Pro, ReReplacer Pro.

Обратите внимание: Геолокация не всегда на 100% точна. Геолокация основана на IP-адресе посетителя. Не все IP-адреса являются фиксированными или известными. Кроме того, IP-адреса могут быть подделаны.

Нашли опечатку или неточность в описании? — Выделите фрагмент текста мышкой и нажмите Ctrl + Enter

Другие расширения от RegularLabs.com

Advanced Module Manager PRO 7.15.0

У сайтов под управлением Joomla есть менеджеры модулей, позволяющие управлять контентом, привязывая их к определенному пункту меню. Благодаря расширению Advanced Module Manager это управление будет еще более гибким и .

Articles Anywhere PRO 10.6.0

Иногда для упрощения работы с контентом веб-ресурса необходим удобный плагин, позволяющий вставлять статьи в любом месте в любое время. Таким удобным расширением является Articles Anywhere, благодаря которому вы сможе .

Modals PRO 11.8.0

Расширение Modals позволяет создавать всплывающие окна на сайте под управлением CMS Joomla. Причем в этих окнах может быть абсолютно любой вид контента, включая тексты, изображения, видео и прочее. Плагин Modals .

Better Preview PRO 6.4.0

Плагин Better Preview позволяет получить расширенный предварительный просмотр добавляемых на сайт под управлением CMS Joomla материалов. Он не просто показывает вам текст статьи, но и демонстрирует, как именно она буд .

Cache Cleaner PRO 7.4.0

Иногда кэш сайта слишком быстро набирает «вес», с чем все веб-мастера активно борются. Одним из самых удобных способов борьбы будет использование модуля Cache Cleaner. Это расширение для CMS Joomla позволяет очистить .

Tooltips PRO 7.6.3

Расширение Tooltips предназначено для отображения контента по наведению на него курсора во всплывающих окнах. Причем речь идет и о тексте, и об изображениях.

Вы можете настроить отображение во всплывающем окне .

Источник

Модули Joomla: Самое подробное руководство

Модули являются неотъемлемой и очень важной частью CMS Joomla. Эта статья представляет максимально подробное руководство по модулям Joomla. Я постарался собрать и структурировать в ней всю информацию о модулях, а также мои знания и опыт.

Данная статья будет полезна как новичкам, так и профессионалам в Joomla. Новички смогут найти в ней ответы на любые вопросы, связанные с модулями, а профессионалы проверят свои знания.

Добро пожаловать в мега-статью, посвященную модулям Joomla.

Содержание

Что такое модули Joomla

Модули Joomla – один из основных видов расширений этой CMS. Наряду с модулями, существуют также компоненты, плагины и шаблоны. Модули – это, определенно, одна из причин использовать Joomla для создания сайта.

Модули представляют собой блоки с какой-либо информацией, встраиваемые в шаблон, контент и другие места на сайте. Давайте посмотрим примеры модулей на сайте wedal.ru:

Все зеленые блоки – модули Joomla. Синий блок – компонент Joomla.

Модули могут встраиваться практически в любую часть сайта, а потому новичкам, да и иногда даже профессионалам, бывает сложно сходу понять, модуль перед ним или нет.

Ровно по этой же причине я не буду давать четкое определение модулей. Скажу лишь, что модули используются, когда нужно показать какую-то общую информацию на каких-то отдельных страницах сайта.

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

a*x1 + a*x2 + b*x3 + b*x4

Давайте представим, что x1, x2, x3, x4 – разные страницы сайта с разным контентом, например, статьи. А a и b – это какой-то повторяющийся контент, который должен быть на этих страницах. Пусть a – это набор картинок, а b – большая таблица с данными.

С одной стороны, мы можем создать 4 страницы с контентом и вставить в редакторе на двух из них одинаковые наборы картинок и на двух других – одинаковые таблицы. Это будет работать. И это как раз будет иллюстрировать формулу, которую я написал выше. Но есть одна проблема.

Что если нам понадобится изменить одну из картинок или информацию в таблице? Придется открывать каждую статью, где они встречаются, и вручную изменять ее содержимое. Хорошо, если таких статей всего 4, как в примере. А если их 40? 400? Становится не очень весело.

Какое есть решение? А давайте запишем нашу формулу в виде:

a*(x1+x2) + b*(x3+x4)

Мы выносим повторяющийся контент страницы в отдельный блок, который страница при создании будет подгружать. В данном случае a и b как раз и будут модулями Joomla. Теперь, если нам понадобится изменить картинку или данные таблицы, мы можем один раз открыть соответствующий модуль и внести правку. После этого изменения автоматически появятся на всех страницах, где этот модуль выводится.

В этом и заключается основной смысл модулей.

Стандартные модули Joomla

Чтобы еще лучше разобраться с тем, что такое модули, давайте посмотрим на те из них, которые будут доступны сразу после установки Joomla. Посмотрите картинку:

Стандартный набор охватывает практически весь типовой функционал. Здесь есть:

  • Вставка html-кода
  • Меню
  • Форма авторизации
  • Список статей/категорий/тегов
  • Хлебные крошки
  • Поиск

Если вы видите что-то из вышеперечисленного на сайте, то с вероятностью 99% перед вами модуль Джумла.

Самую большую часть набора представляют модули вывода материалов. Не все из них идеальны, но большинство вполне годные.

Конечно, вы совсем не обязательно должны использовать стандартные модули Joomla. Никто не запрещает найти что-то более интересное или подходящее под текущую задачу в каталоге расширений Joomla.

Как установить модуль

Если вы хотите установить дополнительный модуль в Joomla, первым делом вам нужно скачать архив с ним. Чаще всего модули, как и другие расширения Joomla, поставляются в виде отдельных архивов с расширением .zip .

Когда вы скачали такой архив, в админке нужно перейти в Расширения –> Менеджер расширений –> Установка, убедится, что активна вкладка Загрузить файл пакета, и, собственно, выбрать файл модуля у себя на компьютере. Что может быть проще?

Также есть два альтернативных варианта установки модуля.

  • Установить модуль прямо из Интернета, перейдя на вкладку Установить изURL, и указать ссылку на файл модуля.
  • Перейти на вкладку Установить изJED, найти подходящий модуль и воспользоваться кнопкой установки.

И хотя этот вариант установки из JED кажется наиболее простым и логичным, я не рекомендую вам его использовать. Случается, что при прямой установке из JED вы получаете далеко не самую свежую версию модуля. Лучше все-таки лично посетить JED (каталог расширений Joomla), подобрать там модуль, а затем перейти на сайт разработчика и скачать его уже там.

В целом же установка модулей Joomla очень проста. С ней легко справится даже новичок.

Сколько модулей может быть на странице

Последнее, о чем хочется поговорить во вводной части – допустимое количество модулей на сайте.

Освоить модули легко. Установить еще легче. Если вы только недавно познакомились с Joomla, то можете словить эйфорию от работы с ними. Не поддавайтесь ей.

Если вы подбираете для сайта интересный модуль, делайте это на тестовом сайте. Не устанавливайте на боевой сайт всё подряд. Это может аукнуться когда-нибудь в будущем.

Другой вариант – веб-мастер делает на модулях весь сайт, вообще забывая про компоненты. За время работы мне доводилось видеть несколько проектов, на которых использовались сотни модулей (нет, не уникальных, но экземпляров какого-нибудь одного, например html-кода). Бывают редкие случаи, когда такое количество модулей оправдано, но это должен быть очень большой проект с очень сложным дизайном.

В основном 50 модулей на сайте – это максимум, после которого вы должны задуматься, о том, что что-то делаете не так. Если у вас большой и сложный сайт (сильно больше и сложнее, чем wedal.ru), то умножьте эту цифру на два.

Для обычных информационных сайтов или интернет-магазинов норма 10-30 модулей (включая экземпляры одного модуля).

Управление модулями Joomla

Управление модулями Joomla с одной стороны очевидное, но с другой стороны содержит очень много тонкостей, о которых важно помнить. Далее мы рассмотрим их.

Прежде всего, нужно понимать, чем отличается уникальный модуль от экземпляра модуля.

Уникальный модуль – такой, который устанавливается, как отдельное расширение и занимает отдельную папку в Joomla.

Экземпляр модуля – отдельно хранящаяся (в базе данных) конфигурация уникального модуля.

Чтобы было проще понять, давайте рассмотрим такой пример. Предположим, у нас на сайте есть слайдеры на двух разных страницах. Сами (функционально) они одинаковые, но должны иметь разный контент. Например, в одном слайдере две картинки, а в другом три другие. Также первый прокручивается автоматически, а второй нет.

В случае с Joomla оба слайдера можно реализовать через один и тот же уникальный модуль, но при этом в админке будет создано два его экземпляра, в которых будут загружены разные изображения и заданы разные настройки, в том числе и привязка к разным страницам.

У одного уникального модуля может быть неограниченное количество экземпляров. Еще раз повторю. Экземпляр – это совокупность настроек модуля, хранящаяся в базе данных и всё. Хотя есть, конечно, и более сложные случаи. О них поговорим позднее.

Просмотр модулей Joomla

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

Первый способ. В админке перейти в Расширения –> Менеджер расширений –> Управление. На открывшейся странице нажать кнопку Инструменты поиска, и в появившемся фильтре выбрать тип расширения Модуль. Посмотрите пример:

Здесь же, кстати, можно удалить ненужные модули.

Вы можете спросить: почему на картинке некоторые модули повторяются? Дело в том, что все модули разделены на две области:

  • Область фронтенда – то, что будут видеть пользователи сайта
  • Область бэкенда (админки) – то, что будут видеть пользователи админки

Для каждой области есть свой уникальный модуль.

Второй способ. В файлах сайта нужно перейти в одну из папок:

  • /modules/ – чтобы посмотреть уникальные модули фронтенда
  • /administrator/modules/ – чтобы посмотреть уникальные модули админки

Эти же каталоги указывают нам расположение модулей в файловой структуре Joomla.

Просмотреть экземпляры модулей Joomla тоже очень просто. Достаточно перейти в админке в Расширения –> Менеджер модулей. Здесь вы увидите список всех созданных экземпляров модулей:

Заметьте, в менеджере модулей показаны экземпляры модулей только одной из областей. По умолчанию это «Сайт». Если вы хотите посмотреть экземпляры модулей админки, то нужно выбрать соответствующую опцию в фильтре, показанном на рисунке выше.

Теперь, когда мы разобрались с тем, что такое уникальный модуль и экземпляр модуля, пора поговорить о настройке.

Настройка модулей Joomla

Прежде всего. Модули, которые вы настраиваете в админке и видите на сайте – это экземпляры. Уникальный модуль – это каркас, файловая система, но не настройки (разве что только те, которые заданы по умолчанию).

У каждого модуля есть как общие настройки, так и свои собственные. Собственные настройки модуля создает разработчик, и они обычно отличаются для каждого модуля. Общие же настройки одинаковы во всех модулях. О них мы сейчас и поговорим.

Позиции модулей

Одна из самых важных настроек, которая есть у каждого модуля Joomla, это Позиция.

Позиция модуля – это место в шаблоне, где модуль может быть выведен.

В каждом шаблоне позиции разные. Их создают разработчики шаблонов.

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

Выбор позиции модуля представляет собой выпадающий список:

Разумеется, для того чтобы выбрать позицию, нужно понимать, где она расположена в шаблоне Joomla. Для обычных шаблонов позиции можно посмотреть так:

  1. Перейти в Расширения –> Менеджер шаблонов –> Настройки и активировать опцию Просмотр позиций модулей:

  1. Открыть главную страницу сайта и добавить к URL ?tp=1, например, https://wedal.ru?tp=1

Это позволит вам увидеть расположение позиций модулей шаблона.

Порядок модулей

Порядок вывода модулей определяется индивидуально для каждой позиции.

Изменять порядок в настройках каждого отдельного модуля я не советую. Это неудобно. Гораздо проще зайти в менеджер модулей, отфильтровать модули по отдельной позиции, нажать на сортировку по самой первой колонке, а затем перетащить модули мышкой так, как нужно:

Связь модулей и пунктов меню. Вывод модулей на отдельных страницах

Второй по важности общей настройкой я считаю привязку модулей к страницам сайта.

По умолчанию в Joomla модули привязываются к пунктам меню. Это может вызывать некоторые затруднения у новичков в Joomla.

Чтобы вывести модуль на отдельной странице, нужно сделать следующее:

  1. В менеджере меню создать новый пункт меню типа Материал (Статья) и выбрать для него статью, на страницу которой нужно привязать модуль. Это не обязательно должна быть статья. Это может быть и страница сайта другого типа. Здесь вы можете выбрать любой тип пункта меню.
  2. В настройках модуля, на вкладке Привязка к пунктам меню, выбрать пункт меню, который был создан в п.1.

Вывод модулей Joomla в разных частях сайта

Выше мы рассмотрели, что такое позиции модулей и как вывести модуль Joomla в одной из них. В этом разделе я расскажу о других способах вывода модулей на сайте. Зачем они нужны и когда используются, вы узнаете далее.

Как добавить позицию модуля в шаблон

Иногда стандартных позиций шаблона бывает недостаточно. Что делать, есть нам нужно вывести модуль в таком месте шаблона, позиции в котором не существует? Нужно создать новую позицию в шаблоне. На самом деле, это проще, чем кажется.

Если вы используете стандартный шаблон и хотите добавить в нем новую позицию, то вам нужно открыть файл:

/templates/ваш_шаблон/index.php

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

Обычно этот код еще оборачивают в условие проверки количества модулей, опубликованных в данной позиции (чтобы иметь возможность скрывать позицию, если в ней нет ни одного опубликованного модуля), но здесь я специально его опускаю для упрощения.

В такой вставке важно указать название новой позиции в атрибуте name и ее стиль в атрибуте style. По умолчанию можно указывать стиль xhtml или none. Он определяет структуру вывода модуля (заголовок, контент, общая верстка). Подробнее про стили позиций рассказывается ниже, в разделе про оформление модулей.

Если вы используйте шаблон, основанный на фреймворке, то, скорее всего, сможете посмотреть текущие позиции и добавить новые в его настройках, в админке.

Как вставить модуль в материал Joomla

Бывает так, что модуль необходимо вставить не просто в шаблон, а прямо в статью на сайте. Примером может служить вставка таблицы в разных статьях, про которую я рассказывал выше.

Для вставки модуля в материал в Joomla есть несколько специальных плагинов. Это работает так. Вы вставляете в статью специальную конструкцию, а при загрузке страницы плагин проверяет, встречается ли она, и если да – заменяет ее модулем.

Вы можете использовать один из двух вариантов:

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

Для вставки позиции модуля используется конструкция:

Название позиции может быть любым. Можете выдумать его на ходу. Главное, чтобы в настройках модуля была указана эта же позиция.

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

Эта конструкция появилась относительно недавно и, если вы используете не самую свежую версию Joomla, она может у вас не работать.

ID модуля можно узнать в менеджере модулей. Там, напротив каждого из них, указан ID.

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

Вставка модуля в компонент Joomla

Этот вариант нужен тем, кто уже хоть немного разбирается в PHP.

Иногда возникает необходимость вставить модуль в страницу, генерируемую каким-либо компонентом Joomla. Самый простой пример – необходимо в интернет-магазине (к примеру, Virtuemart) на странице товара вставить модуль обратной связи. Место этой вставки расположено в макете карточки товара. Как быть?

Для вставки модуля Joomla в компонент можно использовать следующий код:

Это вариант вывода позиции модулей в компоненте.

Есть и другой вариант – вывести модуль по ID:

Этот вариант работает только в последних версиях Joomla 3.

И еще есть третий вариант, о котором я узнал совсем недавно. Он самый простой:

В примере выше нужно убрать восклицательный знак. Я добавил его, чтобы Joomla не пыталась обработать этот вызов здесь, в статье.

Вывести модуль в модуле Joomla

Запомните важный момент! Если перед вами появилась задача вставить модуль в модуль Joomla, то с вероятностью 99% вы что-то делаете неправильно.

Модуль Joomla не предназначен для того, чтобы в него вставляли другой модуль. Это что-то вроде бесконечной песенки «У попа была собака…». Модуль – конечная единица контента в Joomla. Если вам чего-то в нем не хватает, значит, вы неправильно спроектировали структуру сайта или шаблон. Разработчики Joomla учли это и отключили возможность использовать конструкций loadposition и loadmoduleid в модуле html-кода.

Тем не менее, есть способ, позволяющий вставить один модуль Joomla в другой. Для этого вы должны:

  1. Переопределить макет модуля в шаблон Joomla (про макеты и их переопределения читайте в разделе «Оформление модулей», который будет ниже)
  2. В коде переопределенного макета использовать код для вставки модуля в компонент, который я писал чуть выше.

И это будет работать. Модуль будет вставлен в модуль. Но еще раз повторю: это неправильно! Если вам не хватает какого-то контента в модуле, разумнее будет вставить его в переопределенный макет этого модуля, но никак не добавлять в модуль другой модуль.

Advanced Module Manager – вывод модуля на страницах, не привязанных к пунктам меню

Очень часто встречается ситуация, когда нужно вывести модуль только на некоторых страницах, которые не привязаны к пунктам меню. Например, вы хотите вывести модуль с баннером только на отдельных страницах каталога товаров, а к пункту меню привязан только верхний уровень каталога (обычная ситуация в Virtuemart). Это слабая сторона Joomla, т.к. стандартный функционал CMS не позволит вам сделать это.

Да, если вы разработчик, и хорошо разбираетесь в шаблонах Joomla и PHP, то без труда сможете добавить нужную привязку в шаблоне Joomla. Но что делать всем остальным?

На помощь придет стороннее расширение Advanced Module Manager. Оно улучшает менеджер модулей Joomla, добавляя новые различные варианты привязки модулей, а том числе и по URL страницы.

Advanced Module Manager имеет две версии: бесплатную и коммерческую. Различие между ними в количестве разнообразных привязок. Подробнее прочитать про это расширение и сравнить его версии можно здесь.

Что касается моего опыта – я крайне редко использую Advanced Module Manager, поскольку в нем есть и минусы. Такая широта функционала дает, в свою очередь, и гораздо бОльшую нагрузку. Поэтому не устанавливайте данное расширение бездумно. Используйте его только в том случае, на это действительно есть необходимость. И, однозначно, если вам нужно сделать всего 1-3 нестандартных привязки модулей, не стоит устанавливать такого монстра.

Ограничение на просмотр модулей

Еще одной важной возможностью модулей Joomla является разграничение доступа.

Предположим, у нас есть задача в определенной позиции шаблона:

  • Для неавторизованных пользователей показывать форму входа
  • Для авторизованных пользователей показывать пользовательское меню.

Именно так сделано сейчас на wedal.ru.

Вид для авторизованных пользователей:

Как этого добиться? Доступ к модулям на сайте регулируется опцией Доступ, которая есть в любом модуле Joomla:

В выпадающем списке можно выбрать уровень доступа, которым должны обладать пользователи, чтобы видеть данный модуль.

Таким образом, для решения задачи, описанной выше, достаточно:

  1. Создать два модуля: Форма авторизации и Меню пользователя и вывести их в одной позиции на сайте
  2. Задать для модуля Форма авторизации уровень доступа Гость
  3. Задать для модуля Меню пользователя уровень доступа Зарегистрированный

В результате все пользователи, которые зашли на сайт, но не авторизовались, будут видеть только форму входа, а авторизованные пользователи будут видеть меню.

Отдельно стоит сказать про уровни доступа. Их набор не является фиксированным. Вы можете создавать любое количество собственных уровней доступа, привязывать к ним группы пользователей и очень гибко управлять видимостью модулей Joomla. Это довольно сложный функционал. Подробнее про систему контроля доступа (Joomla ACL) вы можете почитать в отдельной статье.

Кэширование модулей

Модули Joomla могут быть очень разными. Иногда актуальность информации в них очень важна (например, последние комментарии, статьи или темы форума), но иногда информация в модуле может быть более чем постоянной. Пример – меню.

Давайте представим ситуацию. У вас на сайте размещено сквозное многоуровневое меню, в котором десятки пунктов. Так бывает очень часто, если не сказать почти всегда.

Для генерации такого меню при запросе каждой страницы Joomla должна обратиться к базе данных, взять из нее все пункты, проанализировать их параметры, создать ссылки в зависимости от этих параметров, построить структуру. Вся эта работа потребляет вычислительные ресурсы сервера.

А теперь представьте, что у вас запрашивается в среднем 1 страница в секунду. При этом работа по генерации меню проводится каждый раз, хотя само меню может не меняться годами. Это совсем не оптимально.

Для оптимизации таких ситуаций и увеличения производительности в Joomla заложен функционал кэширования модулей. В каждом нормальном модуле есть опции, позволяющие включить или выключить кэширование, а также задать время жизни кэша.

Как работает кэширование модулей в Joomla? Вернемся к примеру с меню. При включенном кэшировании, при первой генерации меню Joomla записывает его html-код в файл и хранит этот файл на сервере в папке кэша. Во второй и последующий разы, когда нужно сгенерировать меню, Joomla не делает это повторно, а просто берет html-код из файла и подставляет его в шаблон. Это существенно экономит ресурсы сервера и снижает нагрузку.

У кэша есть время жизни. Оно задается отдельно в каждом модуле. Это важно.

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

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

В каждом отдельном модуле вы можете совсем отключить его кэширование, если актуальность информации, которую он выводит, очень важна. В противном случае настраивайте время кэширования, а опцию включения кэша оставляйте По умолчанию.

При таком подходе вы сможете один раз включить кэширование в общих настройках Joomla и оно сразу заработает для всех модулей, в которых прямо не отключено. Это очень удобно.

Кэширование нужно включать уже после завершения разработки сайта. Включение кэша на этапе разработки будет сильно мешать, т.к. вы не сможете видеть актуальные данные каждый раз при обновлении страницы.

Оформление модулей

Модули Joomla очень хорошо поддаются кастомизации. Обладая соответствующими навыками, вы можете легко и быстро переделать любой из них под свои задачи. В этом разделе я расскажу про всё, что связано с оформлением модулей.

Суффикс класса модуля

Суффикс класса модуля является довольно полезной опцией, когда вам нужно оформить по-разному два экземпляра одного модуля.

Представьте, есть один модуль вывода последних новостей, и вы используете его дважды в разных местах страницы и с разными опциями. Также вам нужно по-разному оформить его в каждом месте. Joomla имеет опцию, позволяющую задать уникальный CSS-класс для модуля.

Подробно про суффикс класса модуля вы можете прочитать в отдельной статье, целиком посвящённой этой теме. Всем, кто постоянно использует Joomla, настоятельно рекомендую к ознакомлению.

Стиль позиции модуля

Далее поговорим про html-структуру модулей на сайте. Она формируется из двух частей:

  1. Стиль позиции модуля в шаблоне
  2. Макет модуля

Каждая из этих частей формирует итоговую html-разметку модуля на сайте. Фактически то, что будет вставлено в шаблон вместо:

Здесь мы рассмотрим первую часть – стиль позиции модуля.

Стилей может быть несколько. Какой именно стиль будет применен, указывается во вставке позиции модуля. Посмотрите пример вставки чуть выше. Здесь применен стиль xhtml.

Вы можете переопределять стили позиций, а также создавать свои собственные стили. Посмотрим как.

Стандартный набор стилей позиции модуля расположен в файле:

/templates/system/html/modules.php

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

/templates/ВАШ_ШАБЛОН/html/

Кстати, очень велика вероятность, что в вашем шаблоне такой файл уже существует. Тогда ничего копировать не нужно – редактируйте файл из вашего шаблона.

Содержимое файла стилей позиции модуля на первый взгляд может показаться сложным, но в реальности оно довольно простое. В файле содержится набор функций. Одна функция определяет один стиль. Шаблон имен функций такой:

modChrome_название_стиля

т.е., к примеру, функция стиля xhtml будет называться:

modChrome_xhtml

Содержимое функции определяет html-разметку стиля позиции. Здесь есть всего две основные переменные, которые нужно вывести:

  1. $module->title – заголовок модуля
  2. $module->content –содержимое макета модуля

Всё остальное – различные параметры и дополнительная логика. Ориентируйтесь на примеры функций в файле, и вы сможете создать свой уникальный стиль для позиции.

Всё это прекрасная теория. На практике же лично я использую в основном только два стандартных стиля:

  1. xhtml – выводит заголовок и содержимое модуля в простых блоках
  2. none – выводит содержимое модуля (без заголовка) без какой-либо разметки. Читай – только макет.

Ну и в целом – изменение стилей позиций модулей – достаточно редкая задача. Чаще всего хватает стандартного их набора. Но зная про стили позиций, вы не будете теряться, когда увидите дополнительную html-разметку вокруг выведенного в шаблон модуля.

Макет модуля

Второй, гораздо более важной составляющей html-разметки модуля, является его макет.

Макет – это файл, который выводит на сайт содержимое модуля. У каждого модуля есть как минимум один макет. Часто модули имеют несколько макетов.

Макеты модуля всегда расположены в каталоге:

/modules/название_модуля/tmpl/

Рассмотрим пример макетов на стандартном модуле авторизации Joomla.

Найти макеты можно в каталоге:

/modules/mod_login/tmpl/

Здесь вы увидите два файла-макета:

Почему два? Т.к. это модуль авторизации, то он может быть показан в одном из двух состояний:

  1. Пользователь не авторизован
  2. Пользователь авторизован

Логично, что в первом случае модуль должен показывать форму ввода логина и пароля, а во втором приветствие пользователя. Поэтому макетов два. Какой из них будет показан, определяется логикой модуля.

Предположим, вы хотите изменить html-разметку макета модуля или добавить в него дополнительный функционал. Как это правильно сделать? Следуем по шагам:

  1. Переопределите редактируемый макет в шаблон Joomla, который используйте
  2. Вносите изменения в переопределенном шаблоне

Переопределить макет модуля очень просто. Его нужно скопировать по адресу:

/templates/ваш_шаблон/html/название_директории_модуля/

В нашем примере это будет:

/templates/ваш_шаблон/html/mod_login/

Все недостающие каталоги создаем сами.

Альтернативный макет модуля

Иногда бывают ситуации, когда один и тот же модуль нужно выводить в разной разметке. Например, в одном месте сайта последние статьи нужно показывать списком и только заголовки, а в другом – заголовок, описание, вводное изображение.

Хорошо, когда опций модуля хватает чтобы сделать такое разделение. Но часто бывает, что нет. В этом случае нам на помощь приходят альтернативные макеты модулей Joomla.

Альтернативный макет – это файл стандартного макета модуля, имеющий другое название и измененное содержимое.

Чтобы создать и использовать альтернативный макет для модуля необходимо:

  1. Переопределить стандартный макет модуля в шаблон Joomla (подробнее о том, как это сделать, написано в разделе выше)
  2. Переименовать стандартный макет в любое другое название, не содержащее специальных символов (в том числе нижнего подчеркивания)
  3. В настройках модуля найти опцию «Альтернативный макет» и выбрать в ней файл, созданный в п.2.

В примере с модулем авторизации (см. раздел выше) я переопределил его стандартные макеты в шаблон Joomla, а затем переименовал их в header.php и header_logout.php соответственно. После этого в настройках модуля авторизации выбрал переименованный макет:

Всё. Теперь данный экземпляр модуля авторизации будет брать разметку из альтернативного макета.

Альтернативных макетов у модуля может быть неограниченно много. Они позволят вам получить огромную гибкость разметки в Joomla. Еще больше информации об альтернативных макетах модулей и не только вы можете найти в статье Макеты Joomla. Как сделать ваш сайт максимально уникальным.

Разработка модуля Joomla

Joomla имеет огромное количество готовых модулей. Но бывает так, что требуемый функционал совершенно уникален. Что делать в этом случае? Создать собственный модуль!

Разработка простого модуля – задача не очень сложная. Тем не менее, она требует базовых знаний HTML, CSS, PHP, XML. Если они у вас есть, то данный раздел будет вам полезен. Если же нет, то создать собственный модуль вам будет довольно сложно. Лучше отдайте эту задачу на аутсорс или обратитесь за созданием модуля ко мне.

Для начала давайте рассмотрим стандартную структуру модуля Joomla. Конечно в зависимости от задач она может меняться, но в целом достаточно постоянна.

Типичный модуль Joomla находится в каталоге /modules/, имеет уникальное название, начинающееся с mod_ , и содержит следующе файлы и подкаталоги:

  • Файл mod_название_модуля.xml(обязательно) – манифест модуля. Здесь содержится установочная информация (версия, автор, дата, и др), ссылки на языковые файлы и опции настроек модуля, которые должны быть доступны в админке.
  • Файл mod_название_модуля.php(обязательно) – точка входа модуля. Именно этот файл запустит Joomla, когда ей потребуется вызвать модуль.
  • Файл helper.php(не обязательно) – набор функций (или методов) модуля. Здесь обычно держат весь функционал модуля.
  • Папку language(не обязательно, но крайне желательно) – содержит языковые файлы модуля.
  • Папку assets(не обязательно) – содержит css и js файлы модуля, если таковые имеются.
  • Папку tmpl((не обязательно, но крайне желательно) – содержит макет вывода модуля

Минимальный модуль будет состоять всего из двух файлов: первых двух, указанных в этом списке. Но делать так – очень плохая практика.

Хороший модуль обязательно должен:

  1. Содержать все тексты (и отдельные слова) в языковых константах. Это нужно, поскольку только в этом случае в модуль может быть внедрена дополнительная локализация и мультиязычность.
  2. Иметь макет вывода, расположенный в подкаталоге tmpl. Это нужно чтобы была возможность переопределить данный макет в шаблон Joomla и отредактировать под свои нужды.

Чтобы написать свой модуль Joomla, я советую взять один из стандартных модулей, установленных по умолчанию, выбрав такой, который в наибольшей степени будет подходить под ваши нужды, а затем переименовать и переделать его. Это поможет сэкономить некоторое время.

Также вы можете найти в Интернете сервисы генерации модулей-заготовок. Конечно, функционал, который вам необходим, они не создадут, но позволят быстро создать каркас модуля со всеми необходимыми для заполнения полями.

Модули Joomla и com_ajax

Есть еще одна важная вещь, которую нужно знать о модулях, прежде чем браться за разработку.

Модуль не может содержать несколько страниц (в стандартном понимании). Т.е., по сути, модуль только выводит информацию, но не обрабатывает ее, как компонент. Это означает, что вы не можете вызвать модуль по прямому URL.

Т.е., к примеру, модуль не предназначен для реализации формы обратной связи, которая сначала показывает форму, а потом страницу «Спасибо».

Для того чтобы иметь возможность вызова модуля по прямой ссылке, применяется специальный компонент Joomla, который называется com_ajax.

Com_ajax работает с модулями следующим образом:

  1. При запросе в адресной строке передается URL вида: php?option=com_ajax&module=название_модуля&format=raw(илиjson)&method=назавание_метода
  2. Com_ajax из параметров понимает к какому модулю обратиться, какой формат ответа от него ждать и какой метод должен быть выполнен, чтобы ответ был получен
  3. В модуле, в файле helper.php должен присутствовать метод, имя которого передается в com_ajax и название которого заканчивается на «Ajax». Например, если в com_ajax передается параметр &method=getForm, то в хелпере должен быть метод getFormAjax.

Вот и всё. Сам этот метод должен генерировать то, что будет ответом на такой URL. Это может быть, в том числе, макет модуля. Таким образом, используя com_ajax, вы сможете вывести модуль по прямому URL.

Более подробную информацию по com_ajax и варианты его использования вы можете найти здесь.

Когда не стоит использовать модули

Не всегда использование модулей на сайте Joomla оправдано. Бывали случаи, когда я сталкивался с сайтами, на которых использовалось 500-800 экземпляров модулей. Стоит ли говорить, что поддержка такого сайта превращалась в настоящий кошмар.

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

Модуль с уникальной информацией для страницы каталога или интернет-магазина

Бывает, что случается такое: на каждой странице каталога товаров (или чего-то еще) появляется необходимость поместить блок с уникальной информацией. Скажем, заказчик просит добавить на странице каждого товара слайдер с дополнительными фотографиями.

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

Правильный подход: использовать дополнительные поля для товара в каталоге. В них загружать слайды и формировать слайдер в макете карточки товара.

Модули html-кода в материалах Joomla

Некоторые разработчики так увлекаются использованием модулей, что часто вставляют их в материалы через редактор, даже когда этого не требуется.

Простой пример: у вас есть таблица, которую нужно вставить в статью. Статья, содержащая эту таблицу, на сайте только одна. Другие статьи содержат другие таблицы.

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

Модули для текста (или меню) в несколько колонок

Часто бывает, что необходимо сделать что-то такое:

Не нужно создавать для этого три разных модуля. Почему? Да, это кажется проще на первый взгляд, но когда вы сделаете аналогичным образом еще несколько блоков, то их поиск и редактирование превратится в кошмар.

Правильный подход: Выводите HTML-код в одном модуле и используйте CSS для создания нескольких колонок.

Если вы сомневаетесь, использовать модуль или нет, то всегда вспоминайте, что основное предназначение модулей Joomla – показывать одинаковую информацию на разных страницах сайта. Вспоминайте пример с многочленом. Если вы видите, что страниц с блоком повторяющейся информации много, то смело размещайте ее в модуле.

Где скачать модули Joomla

Если вы ищете, где можно скачать разнообразные модули Joomla для своего сайта, то запомните одно простое правило:

Скачивать модуль можно только с сайта его разработчика или с extensions.joomla.org.

Все остальные варианты с высокой долей вероятности приведут вас к проблемам. Модули, скачанные из неофициальных источников, могут содержать в коде что угодно. Проблем от них вы получите гораздо больше, чем пользы.

В каталоге расширений Joomla (или сокращенно JED), ссылку на который я дал выше, все расширения проверяются. Загружать модули оттуда или же с сайтов разработчиков, на которые там есть ссылки, относительно безопасно.

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

Бесплатные модули Joomla от Wedal.ru

Я хочу предложить вам несколько собственных бесплатных модулей Joomla. Их нет в JED (пока). В них нет никакого подвоха. Я делал их для себя (точнее для решения частых задач при разработке сайтов), и решил поделиться с сообществом.

  • Wedal Joomla Callback – модуль встроенной и всплывающей формы обратной связи
  • Wedal Joomla Slider – модуль слайдера для Bootstrap
  • Wedal Christmas Tree – модуль новогодней ёлки, внешний вид которой можно настроить

Все три модуля имеют открытый код и распространяются бесплатно. Буду рад, если они пригодятся вам при создании сайтов на Joomla.

Источник

Оцените статью