Обратный звонок на сайт (jbCallMe)

Обратный звонок на сайт (jbCallMe)

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

Модуль заказа обратного звонка для сайта, подойдет для любой CMS. Принцип работы довольно прост: пользователь заполняет и отправляет форму, а вам на почту приходит письмо с этими данными. Неважно, предоставляете ли вы какие-то услуги или ведёте блог, вы всегда будете иметь связь с посетителями или клиентами сайта. Вы можете поставить его на WP, DLE, Joomla, ModX - установка везде одинаково проста, или вы можете заказать установку и у нас.

Расширенная версия Попробуйте расширенную версию с абонплатой 350 руб. в год. С ней вы получаете возможность использовать: sms-информирование, каптчу, отправку файлов, получать дополнительную информацию о пользователе (его город, профиль VK, IP), работающую на абсолютно любом сайте.

Форма может быть всплывающей и статично выведенной в нужном месте страницы. Попробовать Мы даём месяц бесплатного пользования для тестирования системы. 350 руб. в Год, разве это дорого, за неограниченное количество форм для вашего сайта?

Установка

Вставьте в блок <head> страниц, на которых вы хотите появление формы, ссылки на подключаемые файлы плагина и стиля.

<script type="text/javascript" src="/путь_к/jquery.js"></script>
<script type="text/javascript" src="/путь_к/jquery.jbcallme.js"></script>
<link rel="stylesheet" type="text/css" href="/путь_к/jquery.jbcallme.css">

В корень сайта поместите файл postmaster.php из архива. По умолчанию он является обработчиком запросов и выполняет функцию отправки писем на вашу почту. Откройте его и укажите почтовые ящики с которыми будете работать.

Чтобы увидеть форму на сайте, достаточно вызывать функцию для html объекта.

Простой вызов

Для ссылки

<a class="callme_button">Заказать звонок</a> 
$(function() {
    $('.callme_button').jbcallme();
});

Такая конструкция для вызовы формы заказа обратного звонка будет работать в режиме по-умолчанию. Также можно настроить дополнительные поля в форме и изменить её до вида окна обратной связи. Помните, при добавлении полей в форму, их обработчик нужно также добавить и в postmaster.php, чтобы они отправлялись в сообщении.

Демонстрация

Обладателям сайта на Joomla следует заметить, что для корректной работы нужно использовать режим совместимости jQuery с другими js фреймворками, в частности с Mootools.

$.noConflict();
jQuery(document).ready(function($){
   $('.callme_button').jbcallme();
});

Добавление полей

$(function() {
    $('.callme_order_btn').jbcallme({
        postfix: "callme_order", 
        fields: {
            time: {
                label: "Удобное для звонка время",
                placeholder: "17:30 - 20:00",
            },
            descr: {
                label: "Примечание",
                type: "textarea",
            },
            action: {
                type: "hidden",
                value: "callme_order",
            },
        },
    });
});
Демонстрация

Расширенная настройка. Пример формы заказа

<a class="demo3_order_button" data-artist="Джастин Бибер">Джастин Бибер</a> 
<a class="demo3_order_button" data-artist="Вера Брежнева">Вера Брежнева</a> 
<a class="demo3_order_button" data-artist="Семён Слепаков">Семён Слепаков</a> 
$(function() {
    $('.demo3_order_button').jbcallme({
        postfix: 'service_order', // идентификатор окна
        // поля tel и name установлены по-умолчанию. Отключаются добавлением no_tel:true и no_name:true
        //no_tel: true, // не выводить стандартное поле телефона
        no_name: true,
        no_submit: true, // не выводить стандартную кнопку
        title: "Исполнитель на корпоратив", // заголовок окна
        action_url: "/postmaster.php", // путь к обработчику запрсов
        success: "Заказ принят и будет рассмотрен в ближайшее время", 
        fail: "Сообщение не доставлено. Извините за неудобство!", 
        fields: { // добавление полей	
            company: {
                required: true, // обязательное ли
                placeholder: "Ваша Компания", 
                type: "text",
            },
            email: {
                required: true, // обязательное ли
                placeholder: "Ваш e-mail", 
                type: "email",
            },
            list: {
                placeholder: "Количество человек",
                type: "select",
                options: [
                    "До 10 человек",
                    "До 30 человек",
                    "До 50 человек",
                    "До 100 человек",
                    "От 100 человек"
                ]
            },
            artist: {
                label: "Исполнитель",
                type: "text", // или "hidden", чтобы не выводилось в форме
            },
            intro: {
                label: "Дополнительно",
                type: "textarea",
            },
            action: { // невидимое поле, передющее тип формы
                type: "hidden",
                value: "service_order",
            },
            send: {
                type: "submit",
                value: "Заказать",
            },
        },
    }); 
});
Джастин Бибер Вера Брежнева Семён Слепаков

Часто задаваемые вопросы:

Не всплывает форма, что делать?
Проверить подключены ли файлы из инструкции, и правильно ли указан к ним путь. Нет ли конфликтов с другими библиотеками(см. $.noConflict();)? Убедиться, что метод jbcallme() вызывается для существующего селектора, и что вы кликаете именно на этот объект, который подходит под селектор.
Всё время пишет "Сообщение не отправлено". Что делать?
Проверить правильность пути к /postmaster.php. Убедиться, что хостер разрешает функцию mail(). Чтобы функция mail() работала, у вас, как минимум, должна быть установлена SMTP служба на сервере.
Пишет "Сообщение отправлено", но письмо не приходит. Что делать?
Если вы тестируете на локальном компьютере, то письма отправляться не будут, они складываются в спец. папку. Если на внешнем хостинге, то возможно хостер запрещает использовать сторонние почтовые домены, а может почтовый сервер фильтрует письма как спам, либо вообще отказывается принимать. Попробуйте указать почтовый ящик службы mail.ru в качестве e-mail на который будут приходить заявки.