Posted in

Хук Contact Form wordpress: отправляем письма в telegram, а не на почту

Как отправить данные с contact form wordpress в telegram
Как отправить данные с contact form wordpress в telegram. Код на php

Написал простой хук в функциях, чтобы данные с форм contact form уходили в телеграм, а не на почту. Тем более, на многих хостингах и так закрыт порт для рассылки почты.

Как отправить данные с contact form в telegram

В файл functions.php темы добавляем следующий код:

function cf7_send_tg( $contact_form, $abort, $submission ) {
    $wpcf->skip_mail = true;  # Отключаем отправку письма на эмейл
    $name2 = $submission->get_posted_data('your-name');  # Название поля Имя
    $email2 = $submission->get_posted_data('your-email');  # Название поля Эмейл
    $subject2 = $submission->get_posted_data('your-subject');  # Название поля Темы
    $mess2 = $submission->get_posted_data('your-message');  # Название поля Сообщение
    $msg = '*Письмо с сайта normail.biz/*

';
    $msg .= $email2." ( {$name2}) Тема: {$subject2}";
    $msg .= ' пишет: 

'.$mess2;

    $userId = '264111146'; // id user, которому отправляем письмо
    $token = '1011112249:AAEOhnCB8lq3B8lq3B8lJehhB8lq3LW-IG8'; // Token бота 

    file_get_contents('https://api.telegram.org/bot'. $token .'/sendMessage?chat_id='. $userId .'&text=' . urlencode($msg) . '&parse_mode=markdown');
}
         
// add the action 
add_action( 'wpcf7_before_send_mail', 'cf7_send_tg', 10, 3 ); 

Вначале функции отключаем отправку письма на почту (эмейл), чтобы данные уходили только в телеграм. Дальше идут названия полей, который используются в форме contact form wordpress.

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

Дальше айди пользователя, куда уходят данные. И токен бота, с которого слать.

Бота создаем через ботфазер как обычно. И естественно нужно авторизировать аккаунт в боте: написать с телеграм в этот бот (стандартного /start достаточно).

И подключаем действие.

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

7 thoughts on “Хук Contact Form wordpress: отправляем письма в telegram, а не на почту

  1. Ух ты Шикарная вещь, иновационная )))В последнее время все связано с телеграм,все переходят на телегу)

    1. Да, многим удобнее сразу в боте видеть все заявки, чем на почте или еще где.

    1. В документации описано,
      передать файлом в рнр, как вариант.

  2. Я с телегой редко имею дело, но всё равно спасибо!

Leave a Reply

Your email address will not be published. Required fields are marked *