Приветствуем в нашей новой статье! На днях к нам обратился клиент с просьбой настроить отправку уведомлений о новых заявках с сайта в мессенджер Telegram. Сам клиент давно пользуется плагином Contact Form 7 для WordPress и получает заявки на почту, но недавно задумался об их отправке и в Telegram.
Решается такой вопрос за 10 минут без использования сторонних плагинов с помощью готового скрипта, который размещается в файле functions.php. Также вам понадобится свой телеграм-бот, инструкцией по созданию которого мы также поделимся в этом материале!
Создание бота в Telegram
Как говорилось ранее, вам необходимо создать своего бота в Telegram. Пошаговая инструкция по созданию и настройке бота:
- Заходим в Telegram и ищем бота @BotFather;
- Запускаем процесс создания бота с помощью команды /newbot;
- Вводим название бота, а также имя бота (username). Важно, на конце username должно быть слово «bot»;
- После создания бота получаем токен.
Отлично! Бот создан. Теперь можно его запустить и переходить к следующему этапу.
Скрипт отправки сообщений из CF7 в Telegram
Переходим в файл functions.php вашей активной темы и вставляем в него приведенный ниже код.
function send_telegram_message($contact_form) {
$bot_token = 'your_token';
$chat_id = 'your_chat_id';
$message = "Новая заявка с сайта:\n"; ' \n';
$form_data = $contact_form->posted_data;
$submission = WPCF7_Submission::get_instance();
if ( $submission ) {
$form_data = $submission->get_posted_data();
$name = isset($form_data['your-name']) ? $form_data['your-name'] : '';
$phone = isset($form_data['your-tel']) ? $form_data['your-tel'] : '';
$question = isset($form_data['your-message']) ? $form_data['your-message'] : '';
$message .= "Имя: $name\n";
$message .= "Телефон: $phone\n";
$message .= "Сообщение: $question";
}
$api_url = "https://api.telegram.org/bot$bot_token/sendMessage?chat_id=$chat_id&text=" . urlencode($message);
$response = wp_remote_fopen($api_url);
}
add_action('wpcf7_mail_sent', 'send_telegram_message');
После этого нужно поменять your_token и your_chat_id:
- your_token — токен вашего бота, который вы получили ранее при его создании
- your_chat_id — ID учетной записи Telegram, которая будет взаимодействовать с ботом.
Теперь нужно получить Chat ID. В этом поможет бот @username_to_id_bot. Просто запускаем его и получаем Chat ID.
your_name, your_tel, your_message — поля вашей формы, которую вы создавали в Contact Form 7. Например, в форме обратной связи на нашем сайте есть следующие поля: Имя, Телефон, Сообщение.
Готово! Сохраняем изменения в файле functions.php и получаем заявки со своего сайта не только на почту, но и в Telegram.
Понравилась статья? Хотите поддержать нашу команду и не пропустить новые материалы? Тогда подписывайтесь на нашу группу в ВКонтакте или на канал в Телеграм. Там мы не просто уведомляем подписчиков о выходе новых статей, но и делимся результатами различных экспериментов по SEO-продвижению.
Круто, спасибо, тоже начну пользоваться, соглашусь с комментарием выше, хочу уведомления в вацап получать
спасибо познавательно. было бы здорово еще узнать об отправке заявок и в другие месенджеры )
Спасибо за обратную связь! В будущем мы обязательно расскажем и об этом)