Что такое Плагины?

06.11.2023

Все плагины в CMS Zion WebEngine служат для выполнения каких-либо целей. Это может быть вывод какого-то текста, корректировка базы данных, изменение глобальных переменных и т.д.

Где хранятся плагины

Плагины могут быть самостоятельными программными модулями или могут быть частью классов

  • Каждый самостоятельный плагин хранится в одном из файлов в папке plugins, либо plugins/custom. Если Вы хотите изменить один из таких плагинов или создать новый, то сохраняйте его в папке plugins/custom - так он не будет заменён стандартным плагинов в случае обновления CMS. При совпадении имён в plugins и в plugins/custom наибольший приоритет имеют плагины из папки plugins/custom.
  • Если плагин является частью класса, то найти его можно в файле соответствующего класса. Это будет отдельный метод, имя которого всегда начинается с Plugin и в качестве параметров к которому должен передаваться массив params

Набор доступных плагинов зависит от комплекта поставки

Имена плагинов

  • Если плагин хранится в отдельном файле с имением мойплагин.php то имя плагина будет мойплагин (.php обязательно должно присутствовать в имени файла)
  • Если плагин является частью класса, например, мойкласс, и хранится в методе PluginМойПлагин, то имя плагина будет мойкласс_МойПлагин

К плагинам можно обращаться через команду вызова, через URL-адрес или через AJAX

  1. В самом простом случае команда вызова плагина выглядит так: {plugin:мойплагин} или {plugin:мойкласс_МойПлагин}
  2. При обращении через URL-адрес всё аналогично: /?plugin=мойплагин или /?plugin=мойкласс_МойПлагин (в URL также могут быть указаны другие GET-параматры, как слева, так и справа от того, что указано в примере)
  3. При обращении через AJAX нужно соблюсти следующие условия:
    • В HTML-коде веб-страницы должна присутствовать команда вызова специального плагина AJAX - {plugin:ajax} (если указать её несколько раз, дублирование вызова нужных модулей не произойдёт)
    • Вызов плагина через AJAX должен происходить через вызов ассинхронной JS-функции sendRequest(URL,objectID,getRequest,oldHTML,okProc), где
      • URL - URL-адрес плагина (пример смотрите выше)
      • objectID - ID HTML-тега, в который будет возвращён результат выполнения плагина
      • getRequest - оставляйте этот параметр без изменений
      • oldHTML - этот параметр не обязательный - можно оставить его пустым, но если заполнить его текстом или HTML-кодом, то он будет отображаться в результирующем теге objectID до того, как плагин вернёт результат
      • okProc - этот параметр не обязательный - можно оставить его пустым, но если указать в нём какую-либо JS-функцию, то она будет выполнена после того, как плагин вернёт результат (эта функция не должна принимать параметры)

Результаты выполнения плагинов

Плагины могут возвращать результирующий текст или HTML-код.

  • В самостоятельных плагинах результат присваивается PHP-переменной $echo
  • В плагинах из классов результат возвращается через оператор return(...);

От способа вызова плагина зависит то, где и как будет выводиться его результат:

  1. Если используется команда вызова плагина, то результат отобразится именно там, где была команда (результат заменит собой команду)
  2. Если используется обращение по URL-адресу, то результат выведется в браузере (при этом на веб-странице не будет ничего кроме результата выполнения плагина)
  3. Если используется вызов через AJAX, то результат будет выведен в тег, свойство id которого совпадает с тем, что указано в objectID

Параметры плагинов

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

  1. Если используется команда вызова плагина, то она может выглядеть, например, так: {plugin:имя_плагина;color:red;type:apple;action:kick}, при этом
    • после имени плагина должна быть точка с запятой;
    • пары имя-значение (имя и значение параметра) отделяются друг от друга точкой с запятой;
    • имя параметра от значения того же параметра отделяется двоеточием:
    • в именах и в значениях параметров не допускается использовать двоеточия: и точки с запятой;
  2. Если используется обращение по URL-адресу, то для того же плагина с теми же параметрами URL будет такой: /?plugin=имя_плагина&params=color:red;type:apple;action:kick}, при этом
    • после имени плагина нужно написать &params=
    • пары имя-значение (имя и значение параметра) также отделяются друг от друга точкой с запятой;
    • имя параметра от значения того же параметра также отделяется двоеточием:
    • в именах и в значениях параметров не допускается использовать двоеточия: и точки с запятой;, а также амперсанд& и равно=
  3. Если используется вызов через AJAX, то к URL применяются те же требования, что и в предыдущем примере

В плагине эти параметры можно использовать, как элементы ассоциативного массива $params. Например, параметры из примеров выше будут доступны, как переменные $params['color']$params['type'] и $params['action'].

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


CMS Zion WebEngine является бесплатной системой. Развивается за счёт рекламы, помощи веб-студии #webZion и других спонсоров.

 

Будем рады, если Вы поддержите нас любой суммой, а также поделитесь идеями на счёт каких-либо улучшений и доработок для CMS...

 

Заранее, большое, спасибо

 

Блог обновлений

Zion WebEngine X9.01.31
  • Доработан вспомогательный класс для управления изображениями (спасибо Эспираль):
    • Устранена проблема, из-за которой, если не указать (внедрённые в предыдущих обновлениях) отступы, то эскизы получались абсолютно белыми
  • Доработан файл robots.txt по умолчанию:
    • Внедрены некоторые дополнительные запреты на индексирование для поисковых роботов

Zion WebEngine Zion SEO Booster SEO-параметры Изображение Классы Обновления CMS Эскизы

Zion WebEngine X9.01.30
  • Доработан класс для управления базой данных (спасибо Эспираль):
    • Устранены некоторые ошибки, которые могут появляться при отсутствии в комплекте поставки некоторых пакетов
  • Доработаны класс для управления email-сообщениями и обработчик для формы обратной связи (спасибо Новый стандарт):
    • Улучшена поддержка многоязычности
    • Налажен вывод особого уведомления с сообщением кода ошибки, если Ваш адрес попал в чёрный антиспам-список одного из почтовых серверов:
      • В этом случае (в отличии от других) повторные попытки отправки email-сообщения через SMTP не предпринимаются, так как они бесполезны
  • Изменено описание для пакета Zion Export
  • Из пакета Zion Catalog выделен отдельный пакет Zion Import, позволяющий импортировать данные из CSV/Excel и XML/RSS/1С/YML

Zion WebEngine Zion Mail Back Zion Import Zion Export CSV/Excel Email-сообщения SMTP/PHP-mail XML/RSS/1С/YML База данных/Таблицы данных Импорт/Экспорт Классы Многоязычность/Языки Обработчики Обратная связь/Обратный звонок Спам Уведомления Формы

Zion WebEngine X9.01.29
  • Доработаны классы для управления пользователями и оплатой через банк (спасибо Новый стандарт):
    • Реализована возможность распечатывать счета для заказов прямо из административного интерфейса:
      • Доступно только для заказов, для которых в качестве способа оплаты выбрана оплата через банк
      • Доступно только, если включены уведомления о заказах в административном интерфейсе
  • Доработан класс для управления файлами и папками (спасибо Color House):
    • Устранены некоторые недочёты при удалении кэша
  • Доработан классы для управления базой данных:
    • Устранены недочёты при отключении способов оплаты, доставки и уведомлений о заказах, использующих настраиваемые модули
  • Доработан драйвер оболочки:
    • Улучшено распознавание запросов к плагинам
  • Доработан административный интерфейс:
    • Улучшена панель инструментов для контента:
      • Кнопка "Удалить все записи" теперь появляется только, если есть хотя бы одна запись
      • Добавлены новые кнопки:
        • "Просмотреть"
        • "Клонировать"
        • "Удалить эту запись"
        • "Удалить подразделы этой записи"
          • Недоступна на мобильных устройствах
        • "Переместить в указанное место"
        • "Сохранить"
        • "Отменить"
          • Недоступна на мобильных устройствах
        • "К списку"
          • Недоступна на мобильных устройствах
        • "Перейти к шаблону"
      • Доработан вспомогательный класс для управления вкладками:
        • Начата работа по отображению списка вкладок на панели инструментов
    • Виджет с аватаром пользователя теперь доступен только на больших мониторах

Zion WebEngine Zion Catalog Аватар/Логотип Административный интерфейс База данных/Таблицы данных Вкладки Доступы/Пользователи Драйверы Классы Контент/Контентные единицы Корзина для заказов Кэш/Кеш Настраиваемые модули Панель инструментов Плагины Реакции на заказ Способы доставки/самовывоза Способы оплаты Файлы/Папки Шаблоны контента

Zion WebEngine X9.01.28
  • Доработаны элементы "Изображение" и "Галерея", а также вспомогательный класс для управления изображениями:
    • Решены проблемы с возможностью добавлять отступы по краям картинок:
      • Теперь со всех сторон добавляются одинаковые отступы
      • Возможность добавления отступов появляется только тогда, когда у будущего эскиза известны обе стороны
        • Если известна только одна сторона, то в добавлении отступов необходимости нет, так как изображение уменьшается с соблюдением пропорций
        • Возможность, выбора, какую часть изображения обрезать, а какую оставить, также появляется только, если известны обе стороны будущего эскиза
      • Проблем с большими изображениями больше не возникает
    • Также доработаны некоторые административные скрипты

Zion WebEngine Zion Gallery Галереи/Слайды Изображение Классы Элементы Эскизы

Zion WebEngine X8.12.27
  • Доработаны элементы "Изображение" и "Галерея" (спасибо Color House):
    • Временно отключена возможность добавлять отступы по краям картинок:
      • Работаем над устранением некоторых проблем

Zion WebEngine Zion Gallery Галереи/Слайды Изображение Элементы

Zion WebEngine X9.01.25
  • Доработаны элементы "Изображение" и "Галерея", а также вспомогательный класс для управления изображениями (спасибо Color House):
    • Реализована возможность добавлять отступы по краям картинок:
      • Это может быть полезно, когда пропорции оригинального изображения плохо соответствуют пропорциям автоматически создаваемых эскизов
      • Для PNG-изображений поля прозрачные, для остальных - белые
      • При выполнении данной операции с очень большими изображениями может появляться ошибка - работаем над устранением этой проблемы

Zion WebEngine Zion Gallery Галереи/Слайды Изображение Классы Элементы Эскизы

Zion WebEngine X9.01.24
  • Доработан классы для управления базой данных:
    • Более продуманно организована проверка на корректность данных в форме для добавления новой записи
  • Доработан класс для управления онлайн-консультантом:
    • Реализована возможность скрывать кнопки для вызова онлайн-консультанта в тех случаях, когда он должен быть по каким-либо причинам недоступен
  • Доработан класс для управления контентом:
    • Сделано несколько оптимизаций для снижения нагрузки на систему управления правами доступа для групп пользователей
  • Оптимизированы дистрибутивы некоторых пакетов за счёт удаления некоторых файлов, которые были необходимы для старого дизайна административного интерфейса

Zion WebEngine Zion Mail Back Zion JivoSite Zion Multi-Lang Zion Banners Manager Zion Sender Zion Server Zion Bulletins Board Zion Polls База данных/Таблицы данных Доступ Групп пользователей Классы Контент/Контентные единицы Онлайн-консультант

Zion WebEngine X9.01.23
  • Повышена производительность за счёт упразднения или оптимизации некоторых функций (спасибо Новый стандарт):
    • Доработаны классы для управления базой данных, местом в структуре, обменом сообщениями, пользователями и уведомлениями для авторизованных пользователей

Zion WebEngine Zion UserControl Zion Chat База данных/Таблицы данных Доступы/Пользователи Классы Место в структуре Обмен сообщениями/Чат Уведомления

Zion WebEngine X9.01.22
  • Доработан класс для управления проектом:
    • В административный интерфейс внесены некоторые коррективы, учитывающие комплект поставки

Zion WebEngine Что такое Комплект поставки? Административный интерфейс Классы

Zion WebEngine X9.01.21
  • Устранены ошибки в комплекте поставке предыдущей версии Zion Chat (спасибо Новый стандарт):

Zion Chat Обмен сообщениями/Чат

Zion WebEngine X9.01.17
  • Из пакета Zion User Control в пакет Zion WebEngine перенесены некоторые компоненты для работы с аватарами пользователей

Zion WebEngine Zion UserControl Аватар/Логотип Доступы/Пользователи

Zion WebEngine X9.01.16
  • Из пакета Zion Catalog выделен отдельный новый пакет Zion Export (позволяет автоматически экспортировать данные в 1С и аналогичные системы через XML-файлы):
    • Из пакета Zion Catalog также удалены некоторые компоненты, необходимые для старой версии административного интерфейса
    • Доработано создание записей по умолчанию для способов уведомления о заказах
  • Доработан класс для управления базой данных:
    • Дополнен список уведомлений, которые сообщают о необходимости добавить те или иные компоненты при отсутствии их в комплекте поставки

Zion WebEngine Zion Catalog Zion Export Что такое Комплект поставки? XML/RSS/1С/YML Административный интерфейс База данных/Таблицы данных Импорт/Экспорт Интернет-магазин Классы Реакции на заказ Уведомления

Zion WebEngine X9.01.15
  • Продолжается внедрение нового дизайна для административного интерфейса:
    • Доработано меню администратора для всех пакетов
    • Доработан класс для управления шаблонами:
      • Устранены проблемы с отображением списка добавляемых и клонируемых элементов
    • Доработаны вспомогательные классы для управления элементами:
      • Устранены проблемы с отменой удаления элементов из шаблона
    • Устранены проблемы с отображением некоторых инструкций
    • Доработаны формы для настройки уведомлений о новых заказах на системный e-mail и в XML-файлы
    • Доработаны классы для управления уведомлениями и проектом, а также главный файл интерфейса администратора и CSS-оформление для интерфейса администратора
      • Новый дизайн уже доступен во всех поставках, но некоторые его новые возможности станут доступны только в ближайших обновлениях
    • Доработано отображение пути к редактируемому объекту:
      • Для этого создан вспомогательный класс для управления интерфейсом администратора
    • Реализована панель инструментов, которая закрепляется в верхней части интерфейса администратора, и на которой всегда будут доступны кнопки для основных операций для редактируемого в данный момент объекта:
      • Уже доступны следующие кнопки:
        • Показать/скрыть меню
        • Установленные пакеты: в выпадающем списке можно посмотреть комплект поставки и краткое описание для каждого установленного пакета, а также перейти к подробному описанию и к списку всех остальных пакетов (пока отсутствующих в поставке)
        • Уведомления: выпадающий список появляется и автоматически открывается только, если для Вас есть уведомления.
          • Счётчик на этой кнопке отображает количество уведомлений
          • Цвет счётчика на этой кнопке показываеть степень важности уведомлений:
            • Зелёный - выполнено
            • Синий - примите к сведению
            • Жёлтый - важно
            • Красный - опасно
        • Перейти на сайт: главная страница сайта откроется в новом окне
        • Добавить новую запись: пока доступно только в списке контентных единиц и в выбраннной контентной единице
        • Удалить все записи: пока доступно только в списке контентных единиц
      • Остальные кнопки появятся в ближайших обновлениях

Zion WebEngine Zion UserControl Zion Catalog Zion Mail Back Zion SEO Booster Zion xDelivery Zion Gallery Zion Pub Hub Zion JivoSite Zion Chat Zion Multi-Lang Zion Banners Manager Zion Sender Zion Server Zion Robokassa Zion Qiwi Zion Bulletins Board Zion Polls Email-сообщения XML/RSS/1С/YML Административный интерфейс Классы Контент/Контентные единицы Меню администратора Обновления CMS Панель инструментов Помощники/Мастеры/Инструкции/Подсказки Реакции на заказ Уведомления Формы Шаблоны контента Элементы

Zion WebEngine X9.01.14
  • Доработан класс для управления пользователями (спасибо Новый стандарт):
    • Устранены недочёты при определении даты следующего списания абонентской платы
    • Устранены недочёты при определении того, требуется ли для указанного пользователя учёт абонентской платы
  • Продолжается внедрение нового дизайна для административного интерфейса:
    • Доработан класс для управления базой данных
      • Уже можно увидеть изменённую форму добавления новой записи
    • Остальные изменения появятся в ближайших обновлениях

Zion WebEngine Административный интерфейс База данных/Таблицы данных Баланс пользователя/Абонентская плата Доступы/Пользователи Классы Обновления CMS Формы

Zion WebEngine X9.01.12
  • Продолжается внедрение нового дизайна для административного интерфейса:
    • Доработаны очень многие классы в нескольких пакетах
    • Доработан плагин меню администратора
    • Исправлена информация об авторских правах для доработанных компонентов
    • Уже можно увидеть новый путь ("хлебные крошки") к тому что, редактируется в данные момент:
      • Остальные изменения появятся в ближайших обновлениях

Zion WebEngine Zion Catalog Zion Gallery Zion JivoSite Zion Multi-Lang Zion Bulletins Board Административный интерфейс Классы Меню администратора Обновления CMS Плагины

Zion WebEngine X9.01.10
  • Доработан вспомогательный класс для управления элементами (спасибо Новый стандарт):
    • Для всех элементов теперь доступен плагин _CheckedIfNotVoid, позволяющий выводить код checked, если указанное в параметрах поле указанной там же записи не пустое:
      • Может быть полезно для организации различных форм (с галочками), в которых нужно учитывать содержимое базы данных
  • Доработан главный файл гостевого интерфейса

Zion WebEngine База данных/Таблицы данных Галочка Гостевой интерфейс Классы Плагины Формы Элементы

Zion WebEngine X9.01.06
  • Доработан класс для управления пользователями (спасибо Новый стандарт):
    • Устранены некоторые недочёты при работе с абонентской платой и балансом пользователя

Zion WebEngine Баланс пользователя/Абонентская плата Доступы/Пользователи Классы

Zion WebEngine X9.01.04
  • Доработаны страницы ошибок
  • Доработан плагин Meta:
    • Изменены некоторые служебные заголовки для поисковых роботов
  • Доработаны инструкции для CKeditor и СДЭК
  • Доработан элемент для управления HTML-кодом веб-страницы
  • Доработаны уведомления о заказах на системный e-mail
  • Доработаны обработчики для добавления объявления и для форм обратной связи и обратного звонка
  • Доработана система мониторинга для ядра, базы данных и объявлений
  • Доработан плагин email-рассылки:
    • Изменены некоторые служебные заголовки для почтовых серверов
  • Начато внедрение нового дизайна для административного интерфейса
    • Доработаны очень многие классы почти во всех пакетах
    • Доработано меню администратора почти для всех пакетов
    • Доработан главный файл административного интерфейса

Zion WebEngine Zion UserControl Zion Catalog Zion Mail Back Zion SEO Booster Zion xDelivery Zion Gallery Zion JivoSite Zion Chat Zion Multi-Lang Zion Banners Manager Zion Sender Zion Server Zion Bulletins Board Zion Polls Email-сообщения HTML-код веб-страницы SEO-параметры Административный интерфейс База данных/Таблицы данных Доступы/Пользователи Классы Меню администратора Мониторинг Объявления Обработчики Обратная связь/Обратный звонок Плагины Помощники/Мастеры/Инструкции/Подсказки Рассылки Реакции на заказ Редактор контента/WYSIWYG-редактор СДЭК Страницы ошибок Формы Шаблоны контента Элементы

Zion WebEngine X8.12.28
  • Доработан класс для управления пользователями (спасибо Новый стандарт):
    • Теперь в качестве аватара/логотипа можно использовать не только JPG, но и PNG- и GIF-изображения
    • В реквизитах пользователя теперь можно указывать, является ли он плательщиком НДС
  • Доработан элемент HTML-код веб-страницы:
    • Добавлено условие, при использовании которого можно отображать разный код в зависимости от того, является ли указнный пользователь плательщиком НДС

Zion WebEngine HTML-код веб-страницы Административный интерфейс Доступы/Пользователи Изображение Классы Условия Элементы

Zion WebEngine X8.12.27
  • Доработан класс для управления пользователями, как элементом контента (спасибо Новый стандарт):
    • При выборе пользователя в административном интерфейсе теперь отображается не только имя и логин, но также и ID пользователя

Zion UserControl Административный интерфейс Доступы/Пользователи Классы Контент/Контентные единицы Элементы

Ответы на вопросы

Как импортировать данные о пользователях из XML

Как загрузить данные о пользователях, например, о клиентах на сайт из 1С и аналогичных внешних систем через формат XML

Zion UserControl Zion Import XML/RSS/1С/YML Импорт/Экспорт Меню администратора

Что такое Меню администратора?

Общая информация о Меню администратора: что это, где его найти и как им пользоваться?

Zion WebEngine Zion UserControl Zion Catalog Zion Mail Back Zion SEO Booster Zion xDelivery Zion Import Zion Gallery Zion xPayment Zion Pub Hub Zion Export Zion JivoSite Zion Chat Zion Multi-Lang Zion Banners Manager Zion Sender Zion Server Email-сообщения SMS SMTP/PHP-mail XML/RSS/1С/YML Валюты Веб-сервер/Хостинг Галереи/Слайды Доступ Групп пользователей Доступы/Пользователи Изображение Импорт/Экспорт Интернет-магазин Категории Корзина для заказов Корзина для мусора Кэш/Кеш Меню/Списки/Навигация Меню администратора Многоязычность/Языки Обновления CMS Обмен сообщениями/Чат Обратная связь/Обратный звонок Онлайн-консультант Политика конфиденциальности Помощники/Мастеры/Инструкции/Подсказки Рассылки Реакции на заказ Сайт-каталог Скидки/Наценки Спам Способы доставки/самовывоза Способы оплаты Файлы/Папки ФЗ-152 Формы Шаблоны контента Эскизы

Что такое Тип контента?

Общая информация о Типах контента: что это, для чего они нужны, и как их использовать

Zion WebEngine Zion Catalog Zion Pub Hub Меню/Списки/Навигация Типы

Как редактировать Контент?

Как управлять страницами, редактируемыми полями, новостями, статьями, товарами, аксессуарами и другими контентными единицами?

Zion UserControl Zion Catalog Zion Pub Hub Адрес (URL)/ЧПУ/Переадресация Кэш/Кеш Меню/Списки/Навигация Помощники/Мастеры/Инструкции/Подсказки Фильтрация Шаблоны контента

Как настроить сайт?

Zion WebEngine 26 - CMS без абонентской платы

Что такое Комплект поставки?

Общая информация о Комплекте поставки: что это, где его посмотреть и как можно расширить?

Настраиваемые модули

Что такое Вкладки?

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

Zion WebEngine Zion Catalog Zion Gallery Zion Pub Hub Вкладки

Что такое Шаблон контента?

Общая информация о Шаблонах контента: что это, для чего они нужны, и как их использовать

Zion WebEngine Шаблоны контента

Как подтвердить права на сайт в поисковой системе?

Как подтвердить права на сайт в Яндекс.Вебмастере, Google Search Console, Кабинете вебмастера Mail.Ru, Bing - Webmaster Tools и других аналогичных сервисах

SEO-параметры