Данный текст находится в процессе написания, поэтому:
- Заранее прошу прощения за ошибки. Текст еще будет вычитываться.
- Чуть ниже размещен блок, где будет отмечаться что изменилось/ добавилось. Чтобы зайдя через какое-то время, Вы знали о том, что нового добавилось в нашей интерактивной книге.
|
Немного отвлекусь небольшой рекламой. Просто не могу удержаться!
Конструктор модулей, это самый мощный модуль системы, позволяющий создавать свои собственные модули в CMS с практически любым, нужным функционалом.
Вам нужен каталог автомобилей? Пожалуйста!
Список лицензий для Вашего программного обеспечения, тоже нет проблем!
Любые формы обратной связи, калькуляторы и т.д.
А уже если Вы знаете PHP, то его возможности по расширению вообще бесконечны!
В этой статье я создам на сайте специальный раздел, в котором будет выводится список и подробное описание всех модулей нашей CMS. Это хороший пример, позволяющий продемонстрировать одну из возможностей конструктора модулей. А именно, использование его как каталога чего либо, например товаров.
Приступим.
Создание нового модуля и наполнение его информацией
Идем в модуль конструктора модулей:
"Меню разработчика" -> "Конструктор модулей"

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

Названия поменяли, переходим на закладку "Настройки разделов":

В этой закладке настраиваются разделы модуля. В ней может быть настроена:
- Максимальная глубина вложеннности разделов.
Вы можете ограничить количество вложений подразделов у разделов.
- Компонент "Вывод разделов" доступен.
Этот чекбокс управляет тем, можно ли будет выводить на странице и привязывать к пунктам меню иерархию разделов этого модуля.
- Распределять права к разделам со стороны сайта.
Этот чекбокс управляет тем, можно ли будет закрывать/открывать разделы для зарегистрированных или не зарегистрированных пользователей сайта. В общем, распределять доступы для зарегистрированных посетителей сайта к разделам модуля.
- Вы так же можете изменить названия в контекстном меню разделов.
Ну и третья вкладка "Настройки элементов":

задает настройки модуля:
- Заголовок поля "Название элемента" - Вы можете переименовать поле названия элемента, если название по умолчанию Вас не устраивает.
- Выводить поле "Псевдостатический адрес (ЧПУ)" - Вы можете отключить поле с ЧПУ, если оно Вам не нужно у этого модуля.
- Выводить поле "Тематические теги" - если у этого модуля не нужны тематические теги, то выключите это поле.
- Выводить поле "Индекс сортировки" - отключите, если Вам не нужно поле сортировки у этого модуля.
- Выводить поле "Публиковать на сайте" - поле позволяет управлять публикацией каждого элемента модуля на сайте. Если такая возможность Вам не требуется, отключите это поле.
- Уровень раздела, с которого разрешено добавлять элементы - Вы можете ограничить уровень с которого будут добавляться элементы.
- Использовать ссылки - параметр задает будет ли возможность внутри модуля использовать ссылки (ярлыки) на элементы этого модуля.
- Показывать иконки - параметр задает, будут ли выводиться иконки у элементов внутри модуля.
- URL иконки - в этом поле Вы можете прописать свою, уникальную иконку для данного модуля.
Принцип наименования следующий: /cms/images/plugins/имя_иконки_24.png (расширение любое. Разрешение 24х24 пикселя). При этом, в той же папке, у Вас должны еще лежать иконки: /cms/images/plugins/имя_иконки_16.png и /cms/images/plugins/имя_иконки_32.png в разрешениях 16х16 и 32х32 соотвественно. CMS будет брать их автоматически, там где нужно выводить иконки с меньшим или большим размером, чем 24х24 пикселя.
Обязательно размещать иконки с разделе CMS: /cms/images/plugins/
- Вы так же можете переопределить названия пунктов контекстного меню модуля.
Нажимаем кнопку "Сохранить" и модуль готов!
Теперь, чтобы он появился в системе нам нужно 1 раз выйти из CMS и зайти в нее заново. Дело в том, что инициализация модулей происходить именно во время входа в CMS, так что пока Вы не выйдите из системы она "не узнает" о том, что появился новый модуль.
Выхожу, вхожу заново и вижу что модуль появился в меню системы:
Модуль готов, но если мы зайдем в него, то увидим, что карточка товаров пустая и в ней присутствуют только поля по умолчания. А нам нужно еще множество полей, таких как:
- Цена
- Описание модуля
- Скриншоты
- и т.д.
Для этого идем в модуль "Меню разработчика" -> "Макеты данных модулей":

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

Добавляем в модуль нужные нам поля:
Как видите типов полей в версии 4.0 прибавилось. Вы можете разбивать добавленные поля на закладки и т.д.
Поля можно добавлять не только в элементы модуля но и к разделам. Т.е. если Вам у каждого раздела нужна иконка или описание, просто добавьте соответствующее поле в закладке "Поля разделов".
Добавляю нужны поля и получаю то, что мне нужно:
Как видите на скриншоте выше у Вас есть поля:
- ID - уникальный ID поля. Может пригодиться при дополнительном программировании. Нас сейчас не интересует.
- Тип - тип полня. Тут думаю все понятно.
- Нименование - название, которое Вы ввели. Его можно поменять с помощью иконки свойства (шестеренка справа).
- Инфо - задает, будет ли это поле выводиться в списке элементов модуля внутри системы. Чуть ниже покажу на примере что это означает.
- Сорт. - задает, будет ли возможна сортировка по этому полю внутри системы.
- Фильтр - задает, будет ли возможнафильтрация по этому полю внутри системы.
- Обязат. - поле станет обязательным для заполнения.
- Ну и последняя иконка удалит это поле.
Идем в созданный нами модуль:

И наполняем его информацией:
Получаем:

Как видите, у элемента "Библиотека изображений" выводятся поля "Иконка", "PL-имя" и "Цена". Это как раз те поля, у которых мы отметили галочку "Инфо" в макетах данных.
Итак, мы с Вами создали совершенно новый модуль и наполнили его информацией.
Осталось теперь настроить его дизайн и вывести на странице.
Но об этом я расскажу во второй части статьи!
08.02.2009 г.
|