Блог: CMS Joomla

Системный плагин loadmodule, вставляем модуль в статью без ошибок

 

Здравствуйте! В старых версиях Joomla вставить модуль в статью можно было только с использованием сторонних плагинов. Я писал об этом в статье: Как вставить модуль Joomla в статью. Недавно в ядре Joomla появился плагин при помощи кототорого можно вставлять модули в статьи сайта по позиции модуля или по названию. 

Знакомьтесь - Системный плагин loadmodule

Сравнительно недавно, не помню, с какой версии, на Joomla появился внутренний плагин позволяющий вставлять модули в статьи сайта. Называется он Контент - Загрузка модулей. Относится к типу content. Системное название loadmodule.

Управлять плагином можно с вкладки: Менеджер плагинов. Для удобного поиска плагина воспользуйтесь фильтром и укажите в фильтре «Тип», тип плагина – content.

loadmodule content 1

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

Настройки системного плагина loadmodule

Настройки плагина loadmodule также найдете в Менеджере плагинов. Найдите в таблице плагинов строку «Контент - Загрузка модулей» и нажмите на название плагина. Настроек у плагина мало. Можно настроить только стиль палгина.

Стиль системного плагина Loadmodule

 Система предлагает пять стилей плагина (смотрим фото).

loadmodule content 2

  • Нет оформления;
  • Обрамление div;
  • Обрамление несколькими div;
  • Вертикально, в столбце таблицы;
  • Горизонтально в строке таблицы.

Как вставлять модули в статьи при помощи плагина loadmodule

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

Плагин loadmodule позволяет вставлять модули в статьи по двум параметрам:

  • По названию модуля;
  • По позиции модуля на сайте. Позицию модуля вы задаете при создании самого модуля.

Вывод модуля в статью по позиции

Для вывода модулей по его позиции, служит команда loadposition. Синтаксис вывода модуля таков:

, под «ПОЗИЦИЯ» понимаем позиции модулей вашего шаблона.Важно понимать, если вы будете вставлять модуль по позиции, то выведутся все модули этой позиции.

Например, вы создали 4 модуля в позиции, предположим, left_a. В статью вставляете,

.

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

Строка с командой {loadposition….} не должна быть параграфом. Можно сделать «Формат», можно положить в «Div», но не параграф.

На всякий случай напомню, как убрать форматирование и положить строку в div.

  • Открываете статью в визуальном редакторе;
  • Выделяете команду loadposition;
  • В кнопках редактора удаляете форматирование строки;
  • Потом можно положить в div (выпадающая кнопка «формат», «параграф» и т.д.).

Вывод модуля в статью по названию

Для вывода модулей по названию, служит команда loadmodule. Синтаксис вывода модуля по названию таков:

.

А теперь поясню, что это значит. И начнем с самого начала, с создания модуля. Я не буду рассказывать, как создать модуль, думаю вы в курсе. Просто напомню.

При создании модуля, на вкладке Менеджер модулей→Кнопка «Создать», вы указываете тип модуля. Это может быть авторизация, поиск, список статей категории, список всех категорий и т.д. Далее, вы задаете, причем обязательно, такой параметр модуля, как Заголовок. Также, у каждого типа модуля есть другие настройки, пока они нас интересуют, как настройки по-умолчанию, то есть мы их не меняем.

Итак, у модуля есть Тип и Заголовок. В зависимости от типа модуля синтаксис вывода модуля по названию меняется.

  • {loadmodule mod_articles_category, Заголовок модуля} статьи категории.
  • {loadmodule mod_articles_categories, Заголовок модуля} список категорий
  • {loadmodule mod_search, Заголовок модуля} поиск
  • {loadmodule mod_login, Заголовок модуля} авторизация
  • {loadmodule mod_articles_category, Заголовок модуля}
  • Посмотреть системные названия модулей можно в каталоге сайта в папке (/module) 

loadmodule content 5

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

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

Вставляемый модуль нужно включить, но можно не размещать на сайте, а оставить его в позиции «Нет», то есть позицию не указывать. Он выведется loadmodule и из позиции «Нет», что удобнее по сравнению с loadposition.  

Стили loadmodule по умолчанию

  • Если в настройках плагина указать «Стиль» «Нет оформления» Заголовок модуля видно не будет.
  • Если в настройках плагина указать «Стиль» «Обрамление-div»  Заголовок модуля будет выведен в статье в тегах, которые выставлены в настройках модуля. По умолчанию, это теги <h3>.

loadmodule content 4 loadmodule content 3

Как видите, системный плагин loadmodule удобен и прост в управлении и не нужно «загружать» систему сторонним «мусором».

Модуль не отражается, отражается неправильно:

Если не получается вставить модуль по названию:

  • Очистите кеш сайта;
  • Замечал несрабатывание плагина при двойном названии модуля и названии модуля только заглавными буквами;
  • После создания модуля, до его отражения в статье нужно несколько минут.
  • Поменяйте стиль плагина loadmodule, поменяйте формат команды в строке статьи.
  • Откройте статью в исходном коде. Очистите командный тег loadmodule от лишних тегов. Сохранитесь.
  • Плагин сработает,проверено на многих шаблонах.

©Joomla-abc.ru.

Другие статьи раздела : CMS Joomla

 

Компонент Sh404