Плагины 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 23.09.25
  • Доработан класс для управления базой данных (спасибо ТК Кило):
    • Теперь при просмотре списка пользователей в административном интерфейсе отображается название и ID соответствующей группы пользователей

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

Zion WebEngine 23.09.22
  • Доработаны элемент Связи и административные скрипты (спасибо ТК Кило):
    • Стал доступен вариант отображения не только развёрнутого, но и свёрнутого списка подразделов, доступных для установки связи:
      • Такой список загружается быстрее, но предоставляет тот же функционал
      • В некоторых случаях такой вариант отображения будет удобнее для поиска нужного раздела в структуре

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

Zion WebEngine 23.09.21
  • Доработан класс для управления базой данных (спасибо ТК Кило):
    • Теперь для некоторых кнопок в административном интерфейсе можно отображать альтернативные подсказки
  • Доработаны элемент Связи и административные скрипты:
    • Различных параметров для настройки связей теперь стало больше:
      • Новые параметры: Описание и Цена
    • Все параметры связей теперь редактируются не в отдельных столбцах, а при нажатии по соответствующей новой кнопке Настроить связь:
      • При этом открывается модальное окно со всеми параметрами
      • Добавление, настройка и удаление связей теперь происходит быстрее и с затратой меньших ресурсов
      • Список связей теперь стал более лаконичным и загружается значительно быстрее и с затратой меньших ресурсов
      • При настройке элемента Связи в шаблоне теперь можно указать, какие параметры отобразить рядом с кнопкой Настроить связь:
        • При этом отображаться будут только непустые параметры

Zion WebEngine Административный интерфейс База данных/Таблицы данных Классы Помощники/Мастеры/Инструкции/Подсказки Связи Шаблоны контента Элементы Что такое Шаблон контента?

Zion WebEngine 23.08.17
  • Доработан плагин Meta (спасибо Феникс):
    • Теперь из заголовка, описания и ключевых слов автоматически удаляются двойные пробельные символы (в том числе переносы строк, символы табуляции, символы   и т.д.), что чаще позволяет укладываться в лимиты поисковиков

Zion SEO Booster SEO-параметры Плагины Что такое Плагины?

Zion WebEngine 23.08.16
  • Доработан класс для управления проектом (спасибо Trade59):
    • Устранены проблемы с отображением количества доступных обновлений для CMS

Zion WebEngine Что такое CMS Zion WebEngine? Классы Обновления CMS

Zion WebEngine 23.08.15
  • Доработаны элементы Число и Изображение, а также административные JS-скрипты (спасибо Moto-Retail18):
    • Для формирования суммы прописью (например, для указания в счетах) теперь используется новый алгоритм, основанные на встроенных возможностях PHP:
      • Теперь поддерживает не только целые, но и дробные числа
      • Теперь работает не только более корректно, но и использует меньше ресурсов
    • Реализована возможность работать не только с изображениями из файл-менеджера, но и загружать изображения со сторонних сайтов:
      • Важно! Проверка файлов, загружаемых непосредственно со сторонних серверов, на вирусы, целостность, корректность и т.п. в момент загрузки недоступна, поэтому рекомендуется проверять папку с этими файлами /upload/image/external/, например, средствами Вашего хостинга

Zion WebEngine PHP Веб-сервер/Хостинг Изображение Файл-менеджер Число Элементы Что такое Элементы?

Zion WebEngine 23.08.07
  • Доработаны главный файл административного интерфейса и меню администратора для ядра (спасибо Moto-Retail18):
    • Устранены проблемы с отображением количества доступных обновлений для CMS

Zion WebEngine Что такое Меню администратора? Административный интерфейс Меню администратора Обновления CMS

Zion WebEngine 23.08.03
  • Доработан плагин Meta (спасибо MasterProfi):
    • Теперь из заголовка, описания и ключевых слов страницы автоматически удаляются переносы строк и двойные пробелы

Zion SEO Booster SEO-параметры Плагины Что такое Плагины?

Zion WebEngine 23.07.28
  • Доработан плагин Meta (спасибо Феникс):
    • Теперь описание страницы автоматически обрезается до 160 символов, чтобы соответствовать требованиям некоторых поисковиков, в том числе Bing

Zion SEO Booster SEO-параметры Плагины Как оптимизировать сайт под поисковые системы?

Zion WebEngine 23.07.26
  • Доработан класс для управления файлами и папаками (спасибо Moto-Retail18):
    • Устранены недочёты при поиске неиспользующихся файлов в инструменте Размеры файлов и папок

Zion WebEngine Классы Файлы/Папки Что такое Классы?

Zion WebEngine 23.07.20
  • Доработаны класс для управления галереями (спасибо Moto-Retail18):
    • Устранены недочёты в автоматической корректировке структуры таблиц данных в случае обновления до более свежих версий CMS
  • Увеличен срок жизни кэша для CSS-, JS- и TXT-файлов

Zion WebEngine Zion Gallery Что такое CMS Zion WebEngine? База данных/Таблицы данных Галереи/Слайды Импорт/Экспорт Классы Кэш/Кеш Обновления CMS

Zion WebEngine 23.07.19
  • Доработан класс для управления экпортом данных в YML (спасибо Moto-Retail18):
    • Теперь выгрузка данных для Товаров в сообществах VK.com учитывает и другие требования данного веб-сервиса
  • Доработан плагин Meta (спасибо Феникс):
    • Теперь к заголовку и описанию страницы автоматически добавляется поисковый запрос, введённый посетителем на сайте
  • Доработан плагин универсального меню (спасибо MasterProfi):
    • Реализована возможность отображать только те записи, которые связаны с указанным пользователем

Zion WebEngine Zion SEO Booster Zion Export SEO-параметры XML/RSS/1С/YML Доступы/Пользователи Импорт/Экспорт Классы Меню/Списки/Навигация Плагины Поиск текста Сайт-каталог Связи Что такое Плагины?

Zion WebEngine 23.07.18
  • Доработаны класс для управления экпортом данных в YML (спасибо Moto-Retail18):
    • Теперь эта выгрузка может быть использована не только для Яндекс.Маркет, Яндекс.Вебмастер, Яндекс.Директ, но и для Товаров в сообществах VK.com, который более требователен к кодировке.

Zion Export XML/RSS/1С/YML Импорт/Экспорт Классы Кодировки/Наборы символов Сайт-каталог Что такое Классы?

Zion WebEngine 23.07.14
  • Доработаны классы для управления импортом данных из XML/1C и для управления парсером стороннего сайта (спасибо Moto-Retail18):
    • Теперь после обновления данных этими классами происходит автоматическая очистка кэша YML-данных, необходимых для Яндекс.Маркет, Яндекс.Вебмастер, Яндекс.Директ и др.
  • Доработаны класс для управления пользователями (спасибо MasterProfi):
    • Упрощён доступ авторизованного пользователя к его данным

Zion WebEngine Zion Import XML/RSS/1С/YML Доступы/Пользователи Импорт/Экспорт Классы Кэш/Кеш Как импортировать данные о товарах из XML

Zion WebEngine 23.07.13
  • Доработаны класс для управления базой данных и элемент Связи (спасибо MasterProfi):
    • Повышена защита от некорректных запросов к таблицам данных
    • Созданы некоторые другие плагины, упрощающие работу со связями зарегистрированных пользователей и контента

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

Zion WebEngine 23.07.07
  • Доработаны драйвер для управления классами, элемент Изображение, класс для управления пользователями, а также вспомогательный класс для работы с изображениями (спасибо MasterProfi):
    • В таблице пользователей более корректно налажено создание полей, необходимых для нестандартных классов
    • Реализована возможность загружать изображения в личную галерею пользователя через личный кабинет в гостевом интерфейсе:
      • Доступна автообрезка до указанных размеров изображений в личной галерее пользователя
      • Через административный интерфейс можно просмотреть и удалить эти изображения
      • Также создан плагин, упрощающий просмотр этих изображений в гостевом интерфейсе
    • Созданы некоторые другие плагины, упрощающие работу с данными зарегистрированных пользователей
    • Устранены проблемы с сохранением некоторых данных о пользователе через личный кабинет в гостевом интерфейсе
    • Расширен функционал плагина отображающего аватар/логотип пользователя

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

Zion WebEngine 23.07.05
  • Доработаны элемент Изображение и класс для управления документами и реквизитами пользователей (спасибо MasterProfi):
    • Теперь более корректно определяется список полей, которые нужно добавить в таблицу данных пользователей, если необходимо реализовать собственную фотогалерею для каждого пользователя
    • Стала доступна возможность вместо стандартных методов, необходимых для загрузки и проверки документов пользователя, использовать нестандартные методы

Zion WebEngine Zion User Control База данных/Таблицы данных Галереи/Слайды Доступы/Пользователи Изображение Классы Элементы Что такое Классы?

Zion WebEngine 23.07.02
  • Доработаны элемент Связи, классы для управления контентом и пользователями, а также вспомогательный класс для управления вкладками (спасибо MasterProfi):
    • Устранена частичная несовместимость некоторых новых возможностей с некоторыми давно реализованными возможностями

Zion WebEngine Вкладки Доступы/Пользователи Классы Контент/Контентные единицы Связи Элементы Что такое Вкладки?

Zion WebEngine 23.06.29
  • Доработан класс для управления экспортом данных в YML (для Яндекс.Маркет, Яндекс.Вебмастер, Яндекс.Директ и др.) (спасибо Moto-Retail18):
    • Теперь в выгрузку не попадают товары, для которых не загружено изображение - в соответствии с новыми правилами Яндекс.Директ

Zion Export XML/RSS/1С/YML Изображение Импорт/Экспорт Классы Сайт-каталог Что такое Классы?

Zion WebEngine 23.06.28
  • Доработан класс для управления экспортом данных в YML (для Яндекс.Маркет, Яндекс.Вебмастер, Яндекс.Директ и др.) (спасибо Moto-Retail18):
    • Теперь в выгрузку не попадают товары, для которых указана некорректная категория
  • Доработаны элементы Галерея и Изображение (спасибо MasterProfi):
    • Продолжено внедрение функционала, позволяющего реализовать персональную фотогалерею для каждого пользователя:
      • Разработка ещё не завершена

Zion WebEngine Zion Gallery Zion Export XML/RSS/1С/YML Галереи/Слайды Доступы/Пользователи Изображение Импорт/Экспорт Категории Классы Сайт-каталог Элементы Что такое Элементы?