Плагины 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 24.07.17
  • Доработаны классы для управления проектом, а также меню и списками (спасибо Киокушин Online):
    • Упразднены некоторые архаизмы

Zion WebEngine Классы Меню/Списки/Навигация Плагин Menu

Zion WebEngine 24.07.15
  • Доработаны меню администратора для ядра и галерей, помощник по вставке плагина меню, а также классы для управления транспортными компаниями, меню и списками, галереями и слайдами (спасибо Киокушин Online):
    • Всё содержимое раздела Навигация "переехало" в раздел Справочники

Zion WebEngine Zion xDelivery Zion Gallery Что такое Меню администратора? Галереи/Слайды Классы Меню/Списки/Навигация Меню администратора Плагины Помощники/Мастеры/Инструкции/Подсказки Способы доставки/самовывоза

Zion WebEngine 24.07.11
  • Доработаны класс управления корзиной заказов и административные CSS-стили (спасибо Киокушин Online):
    • Меню администратора стало более компактным, что может быть полезно при большом количестве типов контента, которые раньше могли не помещаться на экране
    • Расширены возможности по кастомизации формы заказа для интернет-магазинов

Zion WebEngine Zion Catalog Интернет-магазин Классы Контент/Контентные единицы Корзина для заказов Меню администратора Типы Формы Что такое Тип контента?

Zion WebEngine 24.07.10
  • Доработаны административные скрипты (спасибо ТК Кило):
    • Удалён устаревший, более не использующийся для связей функционал
  • Доработан класс для управления HTTP-ошибками:
    • Более корректно налажена отправка HTTP-заголовков с кодами ошибок

Zion WebEngine Классы Связи Страницы ошибок Что такое Классы?

Zion WebEngine 24.07.09
  • Доработан класс для управления пользователями (спасибо Киокушин Online):
    • Более корректно указаны названия для некоторых новых полей в форме правки данных о пользователе

Zion WebEngine Доступы/Пользователи Классы Формы для пользователей

Zion WebEngine 24.07.08
  • Доработан главный файл гостевого интерфейса:
    • Устранены проблемы в одном из недавних обновлений CMS

Zion WebEngine Что такое CMS Zion WebEngine? Гостевой интерфейс Обновления CMS Страницы ошибок

Zion WebEngine 24.07.05
  • Доработан класс для управления пользователями (спасибо Киокушин Online):
    • Расширены возможности некоторых форм для пользователей и их обработчиков

Zion WebEngine Доступы/Пользователи Классы Обработчики Формы для пользователей Что такое Классы?

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

Zion WebEngine Что такое система Мониторинга? База данных/Таблицы данных Баннеры Гостевой интерфейс Доступы/Пользователи Классы Мониторинг Страницы ошибок

Zion WebEngine 24.07.01
  • Доработан плагин универсального меню (спасибо Киокушин Online):
    • Устранены недочёты с сортировкой чисел по убыванию

Zion WebEngine Меню/Списки/Навигация Плагины Число Плагин Menu

Zion WebEngine 24.06.26
  • Доработан класс для управления пользователями (спасибо ЛеоСталь):
    • Устранены некоторые недочёты с отображением даты регистрации ползователей в административном интерфейсе
  • Доработан класс для управления проектом:
    • Снова стало доступно отображение иконок для пунктов меню администратора
  • Создан отдельный класс интеграции с Рекламной сетью Яндекса

Zion WebEngine Что такое Меню администратора? Административный интерфейс Баннеры Дата/Время/TimeMashine Доступы/Пользователи Классы Меню администратора

Zion WebEngine 24.06.24
  • Доработан класс для управления пользователями (спасибо Киокушин Online):
    • Устранены некоторые недочёты с отображением даты регистрации ползователей в административном интерфейсе

Zion WebEngine Что такое Административный интерфейс и Гостевой интерфейс? Административный интерфейс Дата/Время/TimeMashine Доступы/Пользователи Классы

Zion WebEngine 24.06.20
  • Доработаны плагин подключения AJAX-скрипта и сам AJAX-скрипт (спасибо Киокушин Online):
    • Реализована возможность использования AJAX в родительском фрейме
    • Реализовано автоматическое декеширование AJAX-скрипта при обновлении его версии

Zion WebEngine AJAX Кэш/Кеш Обновления CMS Плагины Что такое Плагины?

Zion WebEngine 24.06.18
  • Доработан плагин универсального меню (спасибо Киокушин Online):
    • Теперь фильтрация доступна и для списков пользователей
  • Доработан элемент Связи:
    • Расширен функционал по работе со связями, доступный для использования из других компонентов CMS

Zion WebEngine Меню/Списки/Навигация Плагины Связи Фильтрация Элементы Что такое Элементы?

Zion WebEngine 24.06.14
  • Доработан плагин универсального меню (спасибо Киокушин Online):
    • Устранены недочёты, выявленные в предыдущем обновлении CMS

Zion WebEngine Что такое CMS Zion WebEngine? Меню/Списки/Навигация Обновления CMS Плагины

Zion WebEngine 24.06.13
  • Доработан плагин универсального меню (спасибо Киокушин Online):
    • Теперь фильтрация записей доступна не только через GET-массивы, но и через POST-массивы, что позволяет обойти ограничения на длину GET-запроов на стороне веб-сервера

Zion WebEngine POST/GET-данные Веб-сервер/Хостинг Меню/Списки/Навигация Плагины Фильтрация Плагин Menu

Zion WebEngine 24.05.31
  • Доработан класс для управления пользователями (спасибо Киокушин Online):
    • Помимо даты регистрации теперь доступен просмотр и даты последнего изменения данных о пользователе

Zion WebEngine Дата/Время/TimeMashine Доступы/Пользователи Классы

Zion WebEngine 24.05.29
  • Доработан класс для управления пользователями (спасибо Киокушин Online):
    • Расширен список полей, доступных для указания контактных данных пользователя
    • Реализована возможность быстро заблокировать или разблокировать пользователя

Zion WebEngine Доступы/Пользователи Классы Как импортировать данные о пользователях из XML

Zion WebEngine 24.05.28
  • Доработан класс для управления интеграцией с Jivo:
    • Устранены недочёты при описании возможностей онлайн-консультанта в административном интерфейсе

Zion JivoSite Административный интерфейс Классы Онлайн-консультант Что такое Классы?

Zion WebEngine 24.05.24
  • Доработаны административные скрипты и элемент Связи (спасибо ТК Кило):
    • Удалён устаревший, более не использующийся функционал

Zion WebEngine Связи Элементы Что такое Элементы?

Zion WebEngine 24.04.25
  • Доработаны классы для управления базой данных, пользователями и проектом, а также страницы ошибок:
    • Улучшена интеграция с Рекламной сетью Яндекса
  • Доработан настраиваемый модуль для работы с Атол Онлайн:
    • Доработана интеграция с веб-сервисом онлайн-кассы
  • Доработан элемент Файл (спасибо Киокушин Online):
    • Реализован функионал, который можно использовать в том числе в нестандартных компонентах для загружки файлов

Zion WebEngine Zion Pub Hub Zion Export База данных/Таблицы данных Доступы/Пользователи Классы Настраиваемые модули Онлайн-касса Реакции на заказ Страницы ошибок Файлы/Папки Элементы Что такое Классы?