[CallBack] Обратный звонок
Раз из раза приходилось настраивать одно и то же решение для вывода формы обратного звонка, и мне это надоело. Поэтому создал данный компонент на основе этого решения. А решение такое: на сайте каким-либо образом выводится ссылка «Обратный звонок», по нажатию на которую выводится модальная форма. В этой форме пользователь может указать свой номер телефона и как к нему обратиться при звонке. Такой нехитрый, но полезный прием для повышения конверсии сайта.
Как работает компонент:
При установке он подтягивает компоненты AjaxForm и FormIt, с помощью которых, собственно, происходит вывод и обработка формы, хотя они теоретически могут быть заменены с помощью параметров &wrapperSnippet и &snippet соответственно. Все параметры по умолчанию настроены так, чтобы при установке и простом вызове сниппета [[callBack]] получить рабочий обратный звонок.
По умолчанию используется оформление и модальные окна из Bootstrap, а так же jQuery Mask Plugin для указания маски ввода телефона.

При успешной отправке формы пользователю в том же модальном окне выводится сообщение об успехе, а администратору на указанную почту приходит письмо.
Еще одна фишка — это ведение журнала заявок на обратный звонок. Он предоставляет возможность поиска по имени и телефону клиентов, оставить комментарий к заявке и выводит все дополнительные поля (небольшая фишечка — добавьте лексикон вида callback_item_имяполя, чтобы вместо, например, поля city выводило Город). Сам лог запускается с помощью хука callBackLog для FormIt, т.е. его можно использовать и отдельно от компонента для других форм.

Документация к компоненту на docs.modx.pro.
А сам компонент доступен в репозитории modstore.pro.
Внимание! Компонент разрабатывается под MODX 2.3 и выше. Он должен работать и в более старых версиях, но с деградацией внешнего вида в части админки. Для вывода стандартных чанков, идущих с компонентом, рекомендуется либо совсем не подключать jQuery на странице (AjaxForm сделает это сам), либо использовать версию не ниже 1.9.0 — т.к. иначе Bootstrap будет ругаться на старую версию.
Считаю, основную задачу — максимально быстрая настройка рабочего решения обратного звонка — компонент выполняет на 100%. Пожелания и предложения по развитию компонента принимаются здесь или на странице компонента в репозитории. Пока рабочие идеи — вынесение настройки почты на страницу компонента, чтобы менеджеру не надо было лезть в системные настройки менять emailsender или параметр сниппета &emailTo. А так же можно будет отметить заявки в журнале как важные, чтобы они выводились выше других.
Как работает компонент:
При установке он подтягивает компоненты AjaxForm и FormIt, с помощью которых, собственно, происходит вывод и обработка формы, хотя они теоретически могут быть заменены с помощью параметров &wrapperSnippet и &snippet соответственно. Все параметры по умолчанию настроены так, чтобы при установке и простом вызове сниппета [[callBack]] получить рабочий обратный звонок.
По умолчанию используется оформление и модальные окна из Bootstrap, а так же jQuery Mask Plugin для указания маски ввода телефона.
При успешной отправке формы пользователю в том же модальном окне выводится сообщение об успехе, а администратору на указанную почту приходит письмо.
Еще одна фишка — это ведение журнала заявок на обратный звонок. Он предоставляет возможность поиска по имени и телефону клиентов, оставить комментарий к заявке и выводит все дополнительные поля (небольшая фишечка — добавьте лексикон вида callback_item_имяполя, чтобы вместо, например, поля city выводило Город). Сам лог запускается с помощью хука callBackLog для FormIt, т.е. его можно использовать и отдельно от компонента для других форм.
Документация к компоненту на docs.modx.pro.
А сам компонент доступен в репозитории modstore.pro.
Внимание! Компонент разрабатывается под MODX 2.3 и выше. Он должен работать и в более старых версиях, но с деградацией внешнего вида в части админки. Для вывода стандартных чанков, идущих с компонентом, рекомендуется либо совсем не подключать jQuery на странице (AjaxForm сделает это сам), либо использовать версию не ниже 1.9.0 — т.к. иначе Bootstrap будет ругаться на старую версию.
Считаю, основную задачу — максимально быстрая настройка рабочего решения обратного звонка — компонент выполняет на 100%. Пожелания и предложения по развитию компонента принимаются здесь или на странице компонента в репозитории. Пока рабочие идеи — вынесение настройки почты на страницу компонента, чтобы менеджеру не надо было лезть в системные настройки менять emailsender или параметр сниппета &emailTo. А так же можно будет отметить заявки в журнале как важные, чтобы они выводились выше других.
Комментарии: 49
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
1) Добавить статусы: Новые, В работе, Выполнены, Отказы
2) Экспорт заказов
3) Добавление лида из админки
4) Возможность назначить менеджера к заявке (из зарег. пользователей опр. группы)
Вообщем, на реализацию всего этого не рассчитываю, но перспективы у компонента есть весьма не плохие!
В целом прикольная штуковина, сейчас сторонние виджеты использует народ с фишкой, перезвоним за 30 секунд и т.п., ну там система дозвона еще есть, но не суть)
АндрейИ сохранение в базу тоже можно прикрутить)
Потому, без обид, просто соображение по теме стоимости вашего расширения, в котором львиная доля функционала от бесплатных AjaxForm и FormIt, — ДОРОГО.
PS Но сейчас же куплю, вам на удачу))) Не принимайте замечание как негатив!
Спасибо за дополнение. Буду собирать с гитхаба. :)
yadi.sk/d/uFk_H4opeVjET — скачать тут
картинки)
НА сайте висит такая кнопка:
Потом появляется такая картинка:
И менеджеру уходит SMS на телефон)
Настройки в админке:
Хочу приспособить плагин для сбора вопросов с сайта.
1.0.0-pl2
==============
— Фикс бага с созданием записи в логе
Небольшое пожелание по части функционала: добавить возможность исключения определенных полей из колонки Данные. У меня в форме есть несколько скрытых полей (input type=«hidden») и они туда попадают, хотя не нужны совсем.
И он прописывается с пробелом перед ним, вот так class=" callback_ajax_form"
Вроде мелочь, а валидатор ругается.
Как это исправить?
И ещё вопрос:
Насколько я понимаю, вот этот код
подтягивает Jquery при условии если он не подключен. Если Jquery подключен, то его можно удалить?
В документации модуля ответов не нашёл.
Заказ на фронт проходит, вроде все четко, но в админке пусто
Кто сталкивался? Помогите разобраться
Выскакивало пару раз это
Форму я как понимаю могу доделать любую, но скорее всего она же не будет сохранять в базу другие поля?
Вызываю так:
Консоль
Консоль запущена…
Пробуем установить пакет с подписью: callback-1.1.0-pl
Пакет найден… сейчас идёт подготовка к его установке.
Загрузка рабочего пространства пакета…
Рабочее пространство загружено, сейчас устанавливаем пакет…
Trying to install FormIt. Please wait…
Error 23000 executing statement: INSERT INTO `modx_transport_packages` (`signature`, `created`, `state`, `workspace`, `provider`, `disabled`, `source`, `package_name`, `version_major`, `version_minor`, `version_patch`, `release`, `release_index`) VALUES ('formit-3.0.2-pl', '2017-08-23 12:55:21', 1, 1, 1, 0, 'formit-3.0.2-pl.transport.zip', 'FormIt', 3, 0, 2, 'pl', 0) Array ( [0] => 23000 [1] => 1062 [2] => Duplicate entry 'formit-3.0.2-pl' for key 'PRIMARY' )
Could not save package FormIt
Trying to install AjaxForm. Please wait…
Загрузка рабочего пространства пакета…
Рабочее пространство загружено, сейчас устанавливаем пакет…
AjaxForm was successfully installed
PHP notice: Undefined index: package_action
Успешно установлен пакет callback-1.1.0-pl