Всплывающая форма wordpress. Как создать контактную форму обратной связи на WordPress

Привет мой любимый читатель! В этом выпуске я расскажу как я реализовал всплывающую форму обратного звонка на сайте WordPress.

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

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

Или в виде кнопочки также в шапке сайта:

Кто-то их может использовать и в футере сайта, это тоже допускается. Смотрится вот так:

Итак, друзья. Все это были примеры, теперь мы с вами реализуем такую же форму обратного звонка для сайта на WordPress уже на практике. Делать я ее буду на сайте, занимающемуся благоустройством территории Калининграда.

Первым делом нам нужно войти в и перейти в раздел плагины, где мы с вами добавим новый плагин под названием Contact Form 7. Это самое популярное решение для создания простых и сложных для блогов.

Ни хухры мухры – 24 миллиона закачек уже о многом говорит. Нажимаем на кнопку установить и она появится у нас в левой части панели администратора.

По умолчанию уже выбран русский язык, так что беспокоиться не стоит. Продолжаем наш процесс.

Теперь нам нужно добавить поля, которые будут участвовать. Они у вас по умолчанию уже стоят, в принципе их можете оставить, не удаляйте. Единственное, что я бы еще добавил обязательное поле с номером телефона.

Для этого нам необходимо в правой части экрана нажать на кнопку «сгенерировать тег» и выбрать соответствующий пункт. Вот таким образом:

Нажимаем на пункт «Номер телефона», ставим галочку в чекбоксе обязательное поле и затем скопируем получившийся в тег в форму слева вместе с другими наименованиями и в шаблон для письма.

В левой части у вас будет такая запись:

Разместите поле с номером телефона под .

В левой части шаблон приходящих писем у нас будет такая запись:

Не забудьте поставить также галочку в чекбоксе «Использовать HTML формат письма»

Внизу вам нужно будет строчку такого вида «Please fill in the required field» перевести на русский, примерно так: «Пожалуйста заполните обязательное поле»

В поле адресат добавьте электронную почту куда будут падать заявки с сайта.

Отлично! Форма обратного звонка для сайта почти готова. Теперь нам нужно сделать всплывающий при ее нажатии.

Создание всплывающей формы

Наша задача состоит в том, чтобы при нажатии на кнопку-ссылку у нас появлялась всплывающая форма обратного звонка. Для ее создания нам потребуется специальный плагин, основанный на языке Jquery, называется он – Easy FancyBox. Он также доступен для установки прямо из админки. Давайте теперь добавим его.

Нажимаете просто на «Установить» и он начнет на вас работать. В нем есть настройки для медиафайлов. Можем пробежаться вкратце по ним.

Размеры изображения – устанавливаете свои значения для миниатюр, средних и крупных картинок.

Эффект FancyBox для следующих категорий медиафайлов:

  • Картинок
  • Pdf документов
  • Инлайн контента
  • SWF графики
  • Youtube
  • Vimeo
  • Dailymotion
  • IFrames

Указываете то, что хотите в дальнейшем использовать. Я оставлю только для картинок.

Также можете задать прозрачность (Opacity) и цвет. Я ничего не задавал, оставил по умолчанию все как есть.

Окно (Window)

  • Показывать значок закрытия окна
  • Цвет заголовка и цвет рамки вокруг
  • Размеры (по умолчанию 560x340x10)
  • Поведение (задержка в секундах когда появляется форма обратного звонка на сайте и скорость закрытия).

Совместимость с другими браузерами и устройствами

  • Включить правила для браузера IE 6 и 7 версии (стили имеется ввиду)
  • Включить правило для стилей к браузеру IE 8

Я ничего в них не указывал, хотя можете поэкспериментировать кросссбраузерность формы.

Изображения

  • Автоопределение для расширений картинок – jpeg, png, jpg. Можете добавить свои расширения
  • Применить ко всем изображениям ссылкам
  • Далее я просто не изменял настройки, оставил все как есть. Поступайте также.

Здорово! Теперь все это богатство опций сохраним.

Теперь очень внимательно слушаем, смотрим и повторяем за мной. Лучше всего форму обратного звонка ставить на самом видном месте, т.е в самом верху шапки сайта, под телефонами и контактами. Мы так и поступим. Переходим в шаблон header . php и вставляем вот этот код:

Обратный звонок

< a id = "myButton" href = "#contact_form_pop" class = "fancybox" > Обратныйзвонок< / a >

< div style = "display:none" class = "fancybox-hidden" >

< div id = "contact_form_pop" >

" " ) ; ?>

< / div >

< / div >

< / div >

Не пугайтесь, что здесь лишний тег div, в моей верстке сайта он не испортил дизайна и не вызвал ошибку, а в другом случае ошибка была. На разных шаблонах поэкспериментируйте и так, и так.

Обратите внимание на функцию в которой выводится форма:

[ contact - form - 7 id = "92" title = "Форма обратного звонка" ]

Вы спросите, а где ее получить? Все элементарно, Ватсон! Идем в Contact Form 7 -> Формы и там вы увидите шорткод для вставки в любом месте на сайте.

Теперь я сохраню страницу, которую редактировал и посмотрю, что у меня в итоге вышло.

размер полей, шрифт и оформить кнопку «Отправить». Потерпите немного J

Дизайн для формы обратного звонка

Я решил в дизайне поменять размер полей имени, email и телефона. Стандартный input не совсем подходит. Как узнать их правильный класс? Делается это с помощью инспектирования элементов, нажатием правой клавиши мыши и нажав на просмотр кода элемента и внизу вы увидите все элементы и классы.

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

Приветствую вас дорогой читатель, в этой статье я покажу вам как создать форму обратной связи во всплывающем окне на вашем сайте WordPress. Часто при разработке собственного сайта или блога необходимо установить возможность оперативной связи с посетителями интернет-ресурса. В этом случае как раз и пригодится всплывающая форма обратной связи для wordpress, которая поможет наладить быстрый контакт с пользователями.

Для чего нужна всплывающая форма обратной связи для wordpress

Причины использования

Рассмотрим, для чего нужна такая форма

  1. Экономия свободного места на сайте. Контактная форма может быть размещена где угодно: в подвале или шапке, в основном контенте страницы, в виде плавающей кнопки и т.д.
  2. Эффективное появление. Анимация возникновения нового окна выглядит интересно и необычно
  3. Доступность. Оставить записи в этой форме можно с любого места сайта, пользователям не нужно возвращаться на главную страницу.

Дополнительный бонус: форму легко видоизменить и настроить под нужды вашего сайта. Всплывающая форма обратной связи для wordpress может быть представлена в виде открывающегося окна для заказа звонка, услуги или товара, оформления подписки. При желании можно добавить визуальные эффекты, различные изображения и пр.

Плагины для установки всплывающей формы

Рассмотрим инструменты, необходимые для разработки всплывающих окон в wordpress – специального приложения для разработки и создания сайтов.

Contact Form 7

Данный плагин используется непосредственно для конструирования формы. Для его установки выполните следующие действия:

Easy FancyBox

Данный плагин пригоден для разработки эффекта всплывающего окна. Последовательность установки Easy FancyBox аналогична установке предыдущего плагина.

Настройка плагинов

Настроить параметры дополнения Easy FancyBox можно через медиафайлы. Воспользуйтесь опциями меню «Настройки» -> «Медиафайлы».

В открывшемся блоке чуть ниже стандартных настроек будут расположены параметры самого плагина. Здесь обычно стоит галочка напротив пункта «Images», которая указывает на активирование выплывающего окна при клике по изображению. Желательно ее снять, так как при наличии других дополнительных инструментов создания всплывающей анимации будет происходить двойное открытие изображений.

Но это еще не все. Поставьте галочку напротив пункта «Inline content»

Все желающие могут дополнительно покопаться в настройках плагина и выставить их на свое усмотрение.

Совет: если вы хотите, чтобы форма всегда была открыта, тогда снимите в настройках Easy FancyBox галочку напротив опции «Close FancyBox when overlay is clicked», выполняющей функцию закрытия окна при клике мышкой за его пределами.

Пошаговая инструкция

Ну вот, со «скучной» предварительной подготовкой покончено, теперь перейдем к самой «вкусной» части – как, собственно, разрабатывается всплывающая форма обратной связи wordpress.

Обработка окна формы

С чего начнем? Конечно же, с предварительной настройки самой формы. Выберите в правом меню пункт «Contact Form 7», а потом опцию «Добавить новую».

Придумайте новое имя формы, например, «Эксперимент», вбейте его в поле ввода открывшегося окна, где расположен текст «Заголовок», и нажмите на кнопку «Сохранить». Можно изменять и другие параметры, в том числе и сам шаблон формы, но мы его трогать не будем. Сейчас наша главная цель – просто научиться созданию всплывающих форм.

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

Выведение формы

Теперь займемся программированием. Новый программный код можно вставить в любом месте сайта, например, в «Контакты», и других. В нашем примере новая форма будет выведена в виджете. Выберите в меню последовательно «Внешний вид», потом кликните на «Виджеты», затем в открывшемся окне нажмите на опцию «Текст».

Теперь щелкните по кнопке «Добавить виджет»

Вставьте в поле ввода «Содержимое» следующий программный код:

Написать письмо

Вот так будет выглядеть получившийся результат:

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

Дополнительно форму можно отредактировать: добавить или убрать поля ввода, ввести начальный и/или конечный текст до и после формы, преобразовать текст в заголовок или вывести его отдельным блоком, использовать различные стили, плэйсхолдеры и т.д. Были бы время и желание!

Стилизация ссылки

Рассмотрим также два способа преобразования ссылки в кнопку для улучшения ее визуального отображения.

1 способ – использование дополнительных стилей темы.

Приведенный ниже программный код можно вставить следующим образом:


Сам программный код выглядит так:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 /***Отображение ссылки в кнопочном виде****/ .contact-us a{ margin:auto; /*выстраивание блока в центре*/ display:block; width:199px; /*размер кнопки*/ padding:11px 22px; /*внутренние отступы*/ border:1px solid black; /*оттенок рамки*/ background:#3399ff; /*фоновый узор*/ text-decoration:none; /*преобразование надписи в неподчеркнутую*/ text-align:center; /*центрирование надписи*/ color:#ffffff; /*оттенок надписи*/ -moz-transition: all 0.6s ease; -webkit-transition: all 0.6s ease; transition: all 0.6s ease; } /**Изменение цвета ссылки при подведении курсора**/ .contact-us a:hover{ -moz-box-shadow: 0 0 7px #111; -webkit-box-shadow: 0 0 7px #111; box-shadow:0 0 7px #111; -moz-transition: all 0.6s ease; -webkit-transition: all 0.6s ease; transition: all 0.6s ease; }

/***Отображение ссылки в кнопочном виде****/ .contact-us a{ margin:auto; /*выстраивание блока в центре*/ display:block; width:199px; /*размер кнопки*/ padding:11px 22px; /*внутренние отступы*/ border:1px solid black; /*оттенок рамки*/ background:#3399ff; /*фоновый узор*/ text-decoration:none; /*преобразование надписи в неподчеркнутую*/ text-align:center; /*центрирование надписи*/ color:#ffffff; /*оттенок надписи*/ -moz-transition: all 0.6s ease; -webkit-transition: all 0.6s ease; transition: all 0.6s ease; } /**Изменение цвета ссылки при подведении курсора**/ .contact-us a:hover{ -moz-box-shadow: 0 0 7px #111; -webkit-box-shadow: 0 0 7px #111; box-shadow:0 0 7px #111; -moz-transition: all 0.6s ease; -webkit-transition: all 0.6s ease; transition: all 0.6s ease; }

Получилась такая кнопка:

В коде уже написано, какой его параметр за что отвечает. Теперь каждый может отредактировать код на свое усмотрение, экспериментируя с различными стилями и цветами и создавая наиболее подходящую ссылку для всплывающего окна.

2 способ – использование изображения в виде кнопки. Сначала загрузите на сайт необходимую картинку (любую по вкусу, не обязательно в виде кнопки, — это не имеет особого значения). Для этого щелкните на «Медиафайлы» -> «Добавить новый» и выберите нужный рисунок. Справа от изображения появится постоянная ссылка на файл (в данном примере http://www.sait.ru/wp-content/uploads/2017/04/depositphotos_2169498-E-mail-internet-icon.jpg), скопируйте ее и добавьте в код (кавычки не удалять):

Полученный код добавьте в основной код вывода формы вместо текста «Написать письмо».

1

На моем сайте отобразилась кнопка, приведенная на скриншоте ниже:

А вот так будет выглядеть кнопка, если оставить дополнительный стиль, описанный в первом способе:

Добавление в меню

Чтобы всплывающая форма обратной связи для wordpress могла вызываться прямиком из меню, необходимо воспользоваться следующим кодом

1 2 3
  • Написать письмо
  • Написать письмо
  • Сначала нужно разобраться, куда именно необходимо вставить этот код. Зайдите в «Редактор» через «Внешний вид» и среди шаблонов выберите «Заголовок (header.php)»

    Теперь отыщите то место, где расположен код меню. Найдите следующую информацию:

    1 2

    < div class = "col-md-4" > [ submit class : btn - flat class : col - xs - 12 "Заказать" ] < / div >

    < / div >

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

    Кнопку вы увидите в правом верхнем углу. Уж точно не промахнетесь. 🙂

    Часть работ мы сделали, теперь переходим к следующему этапу.

    Настройка почтового адреса для приема заявок

    На этом шаге нам нужно сделать некоторые настройки, чтобы письма уходили именно нам на наш почтовый ящик. Как этого достичь я расскажу ниже.

    Нам необходимо нажать на большую вкладку «Письмо». Она будет второй после Шаблона формы.

    Первое, что увидите, это ваши теги, которые вы добавили, их нам необходим вставить в тело письма, именно они будут подставлять данные, которые вводит пользователь с формы. Думаю, что объяснил доходчиво.

    Теперь по полям:

    • To (Куда будет отправляться заявка, в моем случае, это мой адрес почты, можно указывать несколько адресов, куда присылать заявки)
    • From (Поле Откуда, т.е будет подставляться значение, что заявка идет с моего студийного сайта)
    • Тема (Служит для определения, с какой формы приходит заявка, в нашем случае это заявка с формы продвижения сайта).
    • Additional Headers (Дополнительные заголовки, их не трогаем, они нужны для корректности отправки формы)
    • Message Body (Тело сообщения, здесь вы указываете, От кого пришло письмо и с какого адреса, например: «От: Ивана» «Адрес почты: vasya @ mail . ru »)
    • File Attachments (Приложения к файлу, не трогаю)

    Теперь нам необходимо настроить уведомления об успешной или неуспешной отправки письма с контактной формы WordPress.

    Это будут сообщения, которые будут показываться пользователю в ответ на его действия с формой. По умолчанию они идут на английском языке. Я сделал перевод на русских самых необходимых для вас. Их будет более, чем достаточно, а если нет, то переводчик Гугла вам в помощь. Итак, приступим.

    • При успешной отправки сообщения: «Ваше сообщение было отправлено успешно. Спасибо.»
    • При некорректной отправке сообщения с формы: «Ошибка при отправке сообщения. Пожалуйста, попробуйте позже или обратитесь к администратору сайта.»
    • Ошибка заполнения: «Ошибки заполнения. Пожалуйста, проверьте все поля и отправьте снова.»
    • Отправленные данные определены как спам: «Ошибка при отправке сообщения. Пожалуйста, попробуйте позже или обратитесь к администратору сайта.»
    • Некоторые условия должны быть приняты: «Пожалуйста, примите условия для продолжения.»
    • Некоторые поля должны быть заполнены: «Пожалуйста, заполните обязательное поле.»
    • Превышена длина символов в поле: «Указано слишком много данных.»
    • Недостаточная длина символов в поле: «Указано слишком мало данных.»
    • Неверный формат даты: «Формат даты некорректен.»
    • Ранняя дата в минимальном пределе: «Указана слишком ранняя дата.»
    • Поздняя дата в максимальном пределе: «Указана слишком поздняя дата.»
    • Неудачная загрузка файла: «Не удалось загрузить файл.»
    • Неразрешенный тип файлов: «Этот тип файла не разрешен.»
    • Загрузка слишком большого файла: «Этот файл слишком большой.»
    • Загрузка файла не удалась из-за ошибки PHP: «Отправка файла не удалась. Возникла ошибка.»
    • Числовой формат, введенный отправителем, неверен: «Числовой формат некорректен.»
    • Число меньше минимального предела: «Это число слишком мало.»
    • Число больше максимального предела: «Это число слишком велико.»
    • Отправитель не ввел корректный ответ на вопрос: «Вы ввели некорректный ответ.»
    • Адрес e-mail, введенный отправителем, неверен: «Некорректный e-mail.»
    • URL, введенный отправителем, неверен: «Некорректный URL.»
    • Номер телефона, введенный отправителем, неверен: «Некорректный номер телефона.»

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

    Так как наша форма собирает заявки на продвижение сайта, то зайдем на аналогичную страницу.

    Чтобы вставить нашу контактную форму, нам нужно скопировать, присвоенный ей плагином, шорткод. Он доступен под названием вашей формы.

    Копируем и вставляем в нашу страницу, предварительно перейдя в текстовый редактор (не визуальный). Представлено на скриншоте ниже:

    Сохраним нашу страницу и посмотрим, что получилось в итоге в браузере:

    Супер! Теперь давайте попробуем отправить форму ничего в нее не заполнив. И вот, что мы увидим.

    Произошла ошибка отправки с формы, поскольку пользователь не указал нужные данные в полях. Теперь давайте введем корректные данные и посмотрим, что у нас получится в этом случае.

    Нажимаем отправить и вот, что пишет наша форма:

    Теперь посмотрим, как выглядит наша заявка. Они приходят у меня на мэйловскую почту. Проверим доставку:

    Зайдем внутрь, чтобы убедиться в корректности кодировки и всех данных.

    Все просто отлично. Форма работает исправно и отправляет данные. Теперь мы можем собирать заявки, которые будут приходить вам когда вы займетесь , если мы говорим про региональное продвижение.

    Итак, мы рассказали как сделать контактную форму на WordPress на странице сайта. Сейчас я расскажу как сделать всплывающую адаптивную форму обратной связи с помощью нашего плагина Contact form 7.

    Делаем всплывающую адаптивную контактную форму обратной связи на WordPress

    Для того, чтобы наша форма стала адаптивной, т.е «резиновой», нам необходимо подключить еще один плагин, а точнее его дополнение к Contact Form 7 – называется он Bootstrap Contact Form 7. Устанавливаем и просто активируем и все – он работает. С ним никаких настроек делать не нужно. Установили и забыли.

    На следующем шаге я расскажу, какие изменения нужно внести, чтобы наша форма стала всплывающей и адаптивной. Подобную реализацию я сделал на главной странице своего студийного сайта. Для этого перейдем в шаблон index.php, который находится в разделе «Внешний Вид — Редактор». Мы будем работать только с кодом, вручную.

    Наша всплывающая форма будет отображаться в модальном диалоговом окне примерно так:

    Чтобы достичь этого результата вам понадобится следующий код, я представлю его полностью в сниппете:

    Заказать

    < a href = "#" class = "btn btn-primary btn-flat" data - toggle = "modal" data - target = "#modal2" > Заказать< / a >

    < ! -- Modal -- >

    < div class = "modal contact-modal fade" tabindex = "-1" id = "modal2" role = "dialog" aria - labelledby = "myModalLabel" aria - hidden = "true" >

    < div class = "modal-dialog" >

    < div class = "modal-content" >

    < div class = "modal-header" >

    < button type = "button" class = "close" data - dismiss = "modal" > < span aria - hidden = "true" > & times ; < / span > < span class = "sr-only" > Close < / span > < / button >

    < h4 class = "modal-title black" id = "myModalLabel" > Оставитьзаявку< / h4 >

    < / div >

    Очень часто требуется создать форму обратной связи при этом спрятать ее. Появляться такая форма должна при нажатие на кнопку или надпись на сайте в всплывающее окно lightbox. В данной статье мы распишем: Как сделать форму обратной связи во всплывающем окне для WordPress. Вывод формы подписки Feedburner. Как сделать вызов на одной странице несколько форм. Как сделать, чтобы окно с формой (fancybox) обратной связи закрывалось после отправки и разберем все возможные ошибки и их решения.

    Для создания формы обратной связи или других форм для сайта на CMS WP дизайн студия «Движок» рекомендует плагин Contact Form 7, а для всплывающего окна с эффектом лайтбокс будем использовать Easy FancyBox.

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

    В данном случае для вызова нескольких форм обратите внимание на эти части кода:

    6. Вывод формы подписки Feedburner

    ПОДПИСАТЬСЯ

    ПОДПИСАТЬСЯ:

    Можно использовать этот код для своей формы подписки изменив только адрес ленты https://feedburner.google.com/fb/a/mailverify?uri=Cms-info на свой.

    Добавляем такой код, если используется плагин с fancybox например Easy Fancybox:
    on_sent_ok: $.fancybox.close();
    в блок Дополнительные настройки вашей формы.

    Если выдает ошибку: The requested content cannot be loaded. Please try again later

    Такая ошибка может быть на последних версиях движка вордпресса рекомендуется сменить класc в ссылке:
    Обратная связь
    меняем на:
    Обратная связь

    Мы сменили fancybox на fancybox-inline .

    Проблемы и решения какие встречаются:

    1. При нажатии на ссылку с формой ничего не происходило - в адресной строке появлялось http://сайт/#contact_form_pop.
    Проблема решилась заменой плагина Easy FancyBox на FancyBox for WordPress

    2. Если у вас подключена галерея(к примеру NextGEN Gallery) или установлена тема, которые уже имеют эффект «лайтбокса», получается следующее: фотографии открываются встроенным лайтбоксом и ещё лайтбоксом от EasyFancy Box , то есть приходится их потом два раза закрывать.
    Чтобы избежать этого, в настройках EasyFancy Box отключите галочку Images и в верхней части кода всплывающей формы замените класс fancybox на fancybox-inline . Ваш код будет выглядеть так:.

    Обратная связь

    Вот и все, если Вы хотите «поблагодарить» наше - у вас есть такая возможность: справа есть варианты для пожертвований на развитие портала. Или поделитесь статьей в ваших соц.стеях через сервисы ниже.