Плагины Mailback и Callback

08.12.2023

Для чего нужны плагины Mailback и Callback

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

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

В папке plugins, в файлах mailback.php и calllback.php соответсвенно.

Если хотите внести какие-либо изменения в код этих плагинов, то перенесите их в папку plugins/custom - так они не будут заменены стандартными плагинами в случае обновления CMS. Если планируете изменить код только одного плагина, то только его и нужно переносить.

Если хотите также внести изменения в код обработчиков этих плагинов, то из папки handles перенесите в handles/custom файлы guest_mailback.php и guest_callback.php соответсвенно.

Важно! Эти плагины и обработчики доступны только при наличии в комплекте поставке пакета Zion Mail Back.

Как отобразить формы обратной связи и/или заказа обратного звонка с нужными параметрами

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

По умолчанию команды вызова такие:

  • Для формы обратной связи: {plugin:mailback}
  • Для формы заказа звонка: {plugin:callback}

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

Параметры состоят из имени и значения, которые отделяются друг от друга двоеточием :

Одна пара имя:значение от другого аналогичной пары отделяется точкой с запятой ;

От имени плагина параметры также отделяются точкой с запятой

Пример:

У нас есть два параметра. У первого название par1, а значение test. У второго название param2, а значение yahoo

Команда вызова плагина при этом будет такая {plugin:mailback;par1:test;param2:yahoo}.

Обязательных параметров нет. Некоторые параметры могут быть (не)доступны или изменены при определённых значениях других параметров.

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

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

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

Также на набор параметров и значений может влиять комплект поставки.

Имя параметра Значение параметра и комментарии
contacts

Режим отображения списка контактов.

Доступны только следующие параметры:

  • admin - список контактов не отображается - отправка сообщений будет идти на Email для системных уведомлений, указанный в разделе Опции \ Проект.
  • list - отображается список контактов, созданных в разделе Справочники \ Контакты для обратной связи. Записи у которых не заполнены поля Название или E-mail будут скрыты в списке также, как записи, для которых не отмечена галочка Доступен.
  • auto - список контактов отображатется, если есть хотя бы один контакт, у которого заполнены поля Название и E-mail, а также отмечена галочка Доступен. Иначе отправка будет идти на Email для системных уведомлений (по умолчанию).
id

Контакт по умолчанию.

  • При contacts равном list или auto - контакт с указанным ID будет выбран в выпадающем списке контактов.
  • При contacts равном admin - этот параметр игнорируется.
subject

Тема сообщения.

Может быть заполнено значением из переменной GET[subject] или POST[subject] (приоритетно).

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

Устранение проблем с отправкой/доставкой email-сообщений

В разделе Опции \ Обратная связь можно указать параметры для отправки сообщений через SMTP-сервер.

Если параметры не указаны или указаны некорректно, будет предпринята попытка отправить сообщение от имени отправителя (с его "подставного" адреса) через PHP-функцию mail().

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

В качестве "робота" Вы можете использовать любой реальный почтовый ящик, например, созданный на Mail.Ru, Яндекс.Почта, GMail и т.п., которым Вы обычно пользуетесь. Минус такого подхода в том, что пароль от Вашего ящика будет известен тем, кто имеет доступ к админке Вашего сайта.

Можно там же (на Mail.Ru, Яндекс.Почта, GMail и т.п.) создать новый ящик, который Вы не будет использовать, кроме как в качестве "робота". Минус такого подхода в том, что, например, Mail.Ru блокирует ящики, в которые Вы не входите более-менее продолжительное время. Также эти почтовые сервисы могут со временем перестать отправлять Вам почту от робота, если кто-то будет слать Вам через форму на сайте различный спам. Почтовый сервис рассыльщиком спама будет считать именно Вашего "робота".

Более продуманный вариант - создать почтовый ящик с минимальным лимтом на Вашем хостинге, например, Jino.ru. При создании (или при редактировании после создания) почтового ящика включите опции DKIM и SPF. Так письма от робота будут успешно проходить проверку на подлинность и со значительно меньшей вероятсностью будут распознаны, как спам.

Заполните следующие поля в разделе Опции \ Обратная связь :

  • Реальный адрес, с которого будут отправляться письма из формы обратной связи: адрес вида robot@mydomain.com
  • Логин от почтового ящика: часто он может быть равен тому, что указано в предыдущем поле, но не всегда. Бывает, что нужно указать только то, что написано слева от символа @. Бывает, что символ @ нужно заменить на +. Уточните корректные параметры у Вашего хостера.
  • Пароль от почтового ящика: скорее всего Вы сами укажете его при создании почтового ящика
  • SMTP-сервер: уточните его у Вашего хостера (в случае с Jino.ru это smtp.jino.ru)
  • Порт для доступа к SMTP-серверу: уточните его у Вашего хостера (обычно это 465 с включенным шифровнаием или 587 без шифрования, но возможны и другие варианты)
  • Использовать шифрование: поставьте (рекомендуется) или снимите (если шифрование недоступно) галочку

Если в логине почтового ящика используется кириллический домен, то указывайте его в IDNA-формате. То есть без русских букв. Что-то вроде xn--...

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

После вставки плагинов форм на сайт обязательно попробуйте их заполнить, чтобы отправить тестовые сообщения. Если письмо от робота доставлено, но было распознано, как спам (в первый раз такое иногда случается), то обязательно пометьте письмо, как "не спам". Тогда дальше письма будут успешно доставляться в Ваш почтовый ящик.

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

Там Вы сможете увидеть количество неотправленных сообщенией и список из 10 (или меньше) сообщений, с максимальным числом неудачных попыток отправки. Для каждого будет указана причина. В большинстве случае это некорректные параметры - исправьте их. Реже бывает подозрение на спам - создайте робота с другим адресом и укажите его параметры.

Когда проблема будет устранена, все неотправленные письма будут отправлены автоматически. Система работает так, что при каждом обращении к сайту (в том числе к "админке") происходит отправка не более, чем одного сообщения. Это сваязано с ограничениями со стороны веб-серверов. Если нужно срочно отправить всё неотправленное. Просто несколько раз обновите страницу и увидите, как список неотправленных сообщений уменьшается...

SMS-уведомления из форм обратной связи и заказа звонка

В разделе Опции \ SMS-шлюз можно включить (или отключить) уведомления о заполнении форм по SMS.

При этом в случае с формой обратной связи в SMS будет отправляться только контактная информация и тема сообщения. Эта же информация будет дублироваться на e-mail вместе с отправкой текста сообщения.

А в случае с заказом звонка контактные данные будут отправляться только по SMS, но не на e-mail.

Защита от спама

В разделе Опции \ reCAPTCHA доступна инструкция по включеню Google reCAPTCHA, которая позволит защитить формы обратной связи и заказа звонка от спам-роботов.

Если всё-таки спам из формы пришёл на почту, то не помечайте его, как спам (так в чёрный список попадёт Ваш робот). Просто игнорируйте спам-сообщения.

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


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

 

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

 

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

 

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

Zion WebEngine X6.09.26
  • Теперь при правке контента можно значительно проще попасть в редактор HTML-кода веб-страницы - всего 1-2 клика
  • Реализовано использование не только обычных элементов контента, но и уникальных - тех, которые можно применять в одном шаблоне только один раз
  • Улучшены реакции на создание или удаление обычных и уникальных элементов контента

Zion WebEngine HTML-код веб-страницы Контент/Контентные единицы Шаблоны контента Элементы

Zion WebEngine X6.09.23
  • В гостевом варианте редактора контента реализована вставка ссылок: ранее эта возможность была отключена из-за возможности получить доступ к файл-менеджеру для неавторизованных пользователей. Теперь для вставки ссылок используются два независимых модуля: административный (даёт доступ к файл-менеджеру) и гостевой (не даёт доступ к файл-менеджеру, но позволяет вставить ссылку)
  • Доработаны некоторые вспомогательные классы
  • Доработана отладочная составляющая в классе для управления базой данных: теперь проще отслеживать возможные ошибки при обращении к базе данных
  • Доработаны классы для управления шаблонами и контентом: реализовано создание редактируемых полей по умолчанию при создании нового сайта. При очистке таблиц данных эти поля больше не создаются
  • Создана финальная версия пакета FCKeditor Zion Editor. Дальнейшее развитие этого редактора контента прекращено в связи с тем, что успешно протестирован его "преемник" CKeditor
  • Редактор контента CKeditor теперь является неотъемлемой частью Ядра: отдельно поставляется только для более старых версий
  • Ускорена загрузка интерфейса администратора благодаря оптимизации и кэшированию CSS- и JS-составляющей
  • Начата работа по переводу страниц на новую платформу: создан класс для работы с HTML-кодом страницы (работа над ним ещё не завершена)

Zion WebEngine CKeditor Zion Edition FCKeditor Zion Edition HTML-код веб-страницы Административный интерфейс База данных/Таблицы данных Доступы/Пользователи Классы Контент/Контентные единицы Кэш/Кеш Платформа Редактор контента/WYSIWYG-редактор Файл-менеджер Шаблоны контента

Zion WebEngine X6.09.22
  • Завершено создание класса для работы с многострочными полями с редактором контента: варианты настроек редактора теперь можно изменять там же, где редактируется само содержимое редактируемых полей (ни по каким ссылкам больше переходить не нужно)
  • Созданы различные вспомогательные классы: они позволят внедрять нововведения ещё быстрее
  • Оптимизированы варианты настроек редактора контента: исключён несанкционированный доступ к файл-менеджеру
  • Доработан класс для управления многострочными полями без редактора контента: теперь высота и таких полей автоматически увеличивается до нужной величины при правке текста
  • Доработан плагин меню администратора: внедрены некоторые вспомогательные скрипты

Zion WebEngine Классы Меню администратора Многострочные поля Плагины Редактор контента/WYSIWYG-редактор Файл-менеджер

Zion WebEngine X6.09.21
  • Устранены мелкие недочёты при задании параметров по умолчанию для шаблонов и единиц контента
  • Повышена безопасность: исключена вероятность несанкционированного доступа к функциям классов для управления контентом, редактируемыми полями, проектом и шаблонами
  • Доработан плагин меню администратора: внедрены скрипты, необходимые для работы некоторых новых элементов контента
  • Создан класс для управления полями с редактором контента
  • Доработаны некоторые другие классы: расширен и оптимизирован функционал
  • Доработан редактор контента CKeditor: теперь высота редактора автоматически увеличивается и уменьшается под размер контента

Zion WebEngine CKeditor Zion Edition Классы Контент/Контентные единицы Меню администратора Плагины Редактор контента/WYSIWYG-редактор Шаблоны контента Элементы

Zion WebEngine X6.09.20
  • Улучшена совместимость с настройками по умолчанию некоторых хостинг-компаний
  • Внесены некоторые коррективы в класс для управления проектом

Zion WebEngine Веб-сервер/Хостинг Классы

Zion WebEngine X6.09.19
  • Реализовано автоматическое ежедневное резервное копирование каждой таблицы в базе данных новой платформы
  • По просьбам "трудящихся" реализовано восстановление данных из резервной копии прямо в интерфейсе администратора с возможностью выбора одной из доступных версий. Это доступно только для данных новой платформы. В любом случае восстановление стоит делать самостоятельно только в крайних случаях
  • Реализовано автоматическое удаление самых старых резервных копий
  • Повышена безопасность: исключена вероятность несанкционированного доступа к функциям класса для управления базой данных

Zion WebEngine Административный интерфейс База данных/Таблицы данных Классы Платформа

Zion WebEngine X6.09.18
  • Реализовано использование фильтрации при очистке таблиц в базе данных
  • Доработана графическая составляющая меню администратора
  • В классе для работы с редактируемыми полями учтены особенности некоторых HTML-тегов

Zion WebEngine Zion Pub Hub База данных/Таблицы данных Классы Меню администратора Фильтрация

Zion WebEngine X6.09.17
  • Доработано сохранение единиц контента: при смене типа контента будет произведено автоматическое перенаправление на нужный раздел интерфейса администратора
  • Доработано меню администратора: улучшены различные автоматизации

Zion WebEngine Административный интерфейс Контент/Контентные единицы Меню администратора Типы

Zion WebEngine X6.09.16
  • Изменились системные требования CMS для PHP. Минимальная поддерживаемая версия теперь 5.4. Рекомендуемая не изменилась - 5.6
  • Доработана система мониторинга для Ядра
  • Доработаны редактирование и сохранение контента
  • Доработана смена шаблона для контента
  • Доработаны драйвер оболочки и меню администратора: снят ряд ограничений на навигацию по интерфейсу администратора
  • Доработано считывание данных из базы: повышена гибкость в запросах через стандартные функции
  • Немного доработаны классы для работы с шаблонами и с многострочными редактируемыми полями
  • Улучшена связь между таблицами данных
  • Доработано удаление записей и очистка таблиц данных
  • Доработано автоматической создание таблиц данных и автоматическое создание записей по умолчанию
  • Доработаны главные файлы гостевого и административного интерфейсов: реализована возможность использовать новую платформу CMS
  • Реализовано отображение подсказок для всех полей контента: подсказки создают код вставки при использовании которого, можно отобразить содержимое полей в любом месте на сайте
  • Создан плагин Content, который может отобразить любое поле контента в любом месте на сайте
  • При получении данных из базы реализовано кэширование, позволяющее значительно снизить нагрузку на сервер и отображать веб-страницы значительно быстрее

Zion WebEngine PHP Административный интерфейс База данных/Таблицы данных Гостевой интерфейс Драйверы Классы Контент/Контентные единицы Кэш/Кеш Меню администратора Многострочные поля Мониторинг Плагины Платформа Помощники/Мастеры/Инструкции/Подсказки Шаблоны контента

Zion WebEngine X6.09.15
  • Создано несколько заготовок, которые будут использоваться различными классами: это и значительно ускорит дальнейшую разработку, и позволит уменьшить размер дистрибутивов
  • Доработаны классы для управления шаблонами, контентом и редактируемыми полями
  • Устранены проблемы с кнопками и формами добавления, удаления, клонирования и перемещения записей в базе данных

Zion WebEngine База данных/Таблицы данных Классы Контент/Контентные единицы Формы Шаблоны контента

Zion WebEngine X6.09.14
  • Реализовано добавление элементов в шаблон и их удаление до сохранения
  • Реализована возможность разделять вставляемые элементы по вкладкам, чтобы не делать редактор слишком громоздким
  • Значительно расширен и во многом переработан функционал класса для управления шаблонами
  • Создан класс для управления многострочными полями без редактора. На его основе будут создаваться другие элементы контента.
  • Реализовано конфигурирование и сохранение элементов в шаблоне
  • Внесены некоторые коррективы в класс для управления базой данных
  • Реализовано удаление элементов из шаблона после сохранения
  • Доработано автоматическое создание шаблонов
  • Расширен функционал класса для работы с контентом

Zion WebEngine База данных/Таблицы данных Вкладки Классы Контент/Контентные единицы Многострочные поля Шаблоны контента Элементы

Zion WebEngine X6.09.13
  • Ранее для Каталога товаров и Дерева статей была реализована возможность указывать для товаров и статей несколько категорий. Это привело к невозможности использовать некоторые свойства категорий. Теперь эта проблема устранена. Но некоторые свойства можно использовать, если категория у товара или статьи всего одна (спасибо Звони-Пермь)
  • Устранена ошибка в плагине меню категорий товаров: некорректно обрабатывались некоторые параметры
  • Доработано добавление товаров в корзину Интернет-магазина: создано более корректное уведомление
  • Оптимизирован дистрибутив Ядра: удалены более ненужные файлы
  • Доработаны классы для управления базой данных и шаблонами: начато создание элементов, с помощью которых в будущих версиях можно будет создавать страницы, новости, статьи и т.д. как пазлы из составных частей

Zion WebEngine Zion Catalog Zion Articles Tree База данных/Таблицы данных Интернет-магазин Категории Классы Контент/Контентные единицы Корзина для заказов Меню/Списки/Навигация Плагины Сайт-каталог Свойства Уведомления Шаблоны контента Элементы

Zion WebEngine X6.09.12
  • Доработано создание записей в базе данных: устранена вероятность несовместимости с ЧПУ
  • Немного доработано оформление меню администратора
  • В драйвере управления древовидными структурами устранена вероятность возникновения ошибки при подсчёте файлов на диске (спасибо Звони-Пермь)
  • Устранены некоторые недочёты в пакете Ленты новостей

Zion WebEngine Zion News Line Адрес (URL)/ЧПУ/Переадресация База данных/Таблицы данных Драйверы Контент/Контентные единицы Меню администратора Место в структуре Файлы/Папки

Zion WebEngine X6.09.11
  • Доработан драйвер оболочки: теперь классы могут "перекрывать" своими методами некоторые стандартные функции, в том числе расширяя функционал некоторых подсистем
  • Расширен функционал классов для работы с базой данных и с шаблонами

Zion WebEngine База данных/Таблицы данных Драйверы Классы Шаблоны контента

Zion WebEngine X6.09.10
  • Доработано меню администратора
  • Оптимизирован дистрибутив Ядра: из него удалены более ненужные файлы
  • Улучшено перетаскивание записей в базе данных: устранены некоторые несовместимости с другими операциями
  • Доработан драйвер оболочки: внедрена поддержка работы с классо-ориентированными плагинами
  • Доработаны создание и продвинутое перемещение записей в базе данных, а также клонирование при создании, клонирование из списка и перемещение при создании записи
  • Завершена разработка редактора списка записей в базе данных, в частности списка шаблонов
  • Начата разработка редактора записей в базе данных, пока на примере шаблонов

Zion WebEngine База данных/Таблицы данных Драйверы Меню администратора Плагины Шаблоны контента

Zion WebEngine X6.09.09
  • Более продумано организовано перемещение записей в базе данных
  • Теперь помимо уже привычного перемещения записей в базе данных доступно более естественное их перетаскивание в нужное место

Zion WebEngine База данных/Таблицы данных

Zion WebEngine X6.09.07
  • Значительно расширен функционал класса для работы с базой данных: проработаны операции перемещения записей (вверх, вниз и в любое указанное место)

Zion WebEngine База данных/Таблицы данных Классы

Zion WebEngine X6.09.06
  • Значительно расширен функционал классов для работы с базой данных и с шаблонами: проработаны операции добавления и удаления записи, а также клонирование записи из формы создания новой записи и клонирование записи из списка записей
  • Устранены некоторые недочёты в драйвере оболочки
  • Доработано меню администратора: внедрены настройки для функционала, который станет доступен в ближайших версиях
  • Расширен функционал некоторых системных плагинов

Zion WebEngine База данных/Таблицы данных Драйверы Классы Меню администратора Плагины Формы Шаблоны контента

Zion WebEngine X6.09.05
  • Устранена ошибка в дистрибутиве Обратной связи (спасибо Вагонка Пермь)
  • Внесено несколько доработок в класс для работы с базой данных
  • Создано несколько плагинов для упрощения выполнения некоторых операций

Zion WebEngine Zion Mail Back База данных/Таблицы данных Классы Обратная связь/Обратный звонок Плагины

Zion WebEngine X6.09.04
  • Доработан главный файл гостевого интерфейса: подключены некоторые классы, необходимые для расширения функционала в будущих версий Ядра
  • Создано несколько плагинов для административных нужд
  • Расширен функционал класса для управления базой данных

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