Отправка содержимого формы с сайта в ВКонтакт для WordPress

WordPressДля CMS WordPress существует плагин «Contact Form 7«, он позволяет реализовать нужные нам контактные формы. У нас уже есть созданная форма с нужными полями, осталось ей добавить функционал отправки в ВК. В данной статье речь пойдёт о том, как реализовать отправку данных из формы на сайте в ВКонтакте используя API VK и метод «messages.send«.

Contact Form 7 — Отправка данных из формы в ВКонтакте.

Что нам понадобиться:

  • Установленный плагин Contact Form 7. Информацию о том как установить плагин «Contact Form 7» на WordPress можете посмотреть в данной статье: WordPress — Создание контактной формы)
  • Токен от Standalone-приложение в ВКонтакте. Информацию о том как создать Standalone-приложение и token можете посмотреть в данной статье: API VK — Создаём Standalone-приложение и получаем token
  • Скрипт для перехвата содержимого формы и отправки сообщения по средствам API VK, метод messages.send
  • Доступ к файлу темы functions.php. Туда будем добавлять наш скрипт (файл можно найти по пути «/Домен/wp-content/themes/Название Темы» или в онлайн редакторе админки WordPress).

Создаём Хук для перехвата введенных данных из формы

Представим, что у нас уже установлен плагин Contact Form 7 и мы создали в нём нужную форму.

Так как наш плагин Contact Form 7 является сторонний, то нам необходимо создать хук для перехвата данных из формы. Выглядеть это будет так:

Первое, что необходимо, это заменить имя формы в данном поле на Ваше:

В нашем случае это «Контакты», взять имя можно перейдя в настройки Contact Form 7

Contact Form 7 отправка данных формы в ВК

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

  • [‘your-name’]  — Имя
  • [‘your-message’] — Сообщение
  • [‘your-email’] — Emai
  • [‘your-subject’] — Тема

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

Contact Form 7 добавляем номер телефона

Получаем имя «tel-740» (у Вас соответственно своё название). Далее необходимо добавить новое поле в наш скрипт, добавить для него переменную (дописать в конце), например так:

[‘tel-740’] — наше поле

$tel — новая переменная (название можете указывать любое)

В итоге хук будет выглядеть так:

Отправка данных из формы в ВКонтаке

Теперь нам необходимо дописать код отправки текста из формы в ВКонтакт. Скрипт будет выглядеть так:

$domain — тут указываем доменное имя получателя сообщения (обычно отображается в строке браузера, когда открываешь страницу пользователя ВК, примерно так: «vk.com/name»)

Хочу заметить, что вместо домена можно использовать user_id, то есть идентификатор пользователя. Для этого необходимо в переменной $query исправить «?domain=» на «user_id«. Должно быть так:

Ну и соответственно в переменной $domain указать id пользователя.

$token — в данной переменной указываете свой токен, полученный в результате создания Standalone-приложение.

$sbormess — тут указываем необходимый текст и переменные из формы. В моём случае: $firstName, $email, $subject, $message. Так же не забывайте если вы добавили своё поле и новую переменную, то тут её доже необходимо добавить, иначе не получите текс из нужного поля.

$query — тут сам запрос к API VK, который отправляет сообщение.

Готовый скрипт отправки данных из формы в ВКонтакт

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

Теперь нам необходимо его добавить в конец файла functions.php и проверить работоспособность.

Заполняем поля нашей формы:Contact Form 7 отправка даннхый формы в ВК итогИ нажимаем отправить. И смотрим, что пришло в ВКонтакте:

Contact Form 7 отправка даннхый формы в ВК итог 2

Теперь Вы не пропустите важное сообщение с вашего сайта.

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

Всем удачи и море печенек!

Один комментарий

  1. Phyliss Patty

    I am really impressed with your writing skills as well as with the layout on your weblog. Is this a paid theme or did you customize it yourself? Either way keep up the excellent quality writing, it’s rare to see a nice blog like this one these days..

Лицензионное соглашение

Авторские права публикуемых материалов полностью или частично принадлежат авторам сайта Pechenek.NET в соответствии со статьями 1252 и 1301 ГК РФ. Любое распространение должно быть согласовано с автором материала или с указанием ссылки на первоисточник.