Categories: Все о WordPress

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

Написал простой хук в функциях, чтобы данные с форм 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 = '*Письмо с сайта bdseo.ru*

';
    $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 достаточно).

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

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

veniamin

View Comments

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

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

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

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

Recent Posts

Бонус 100 USDT +10 BUSD от Binance

Биржа криптовалют Binance проводит сейчас промо-акцию: новым пользователям дают ваучеры в сумме 110 долларов. Деньги…

2 года ago

Как парсить длительность видео youtube на php в привычном виде

Самый главный момент в работе с youtube - это получить ключ api через консоль разработчика…

2 года ago

Как удалить чужую сессию пользователя в ubuntu (linux)

Арендую сервер для небольшого проекта на python. И вот приходит мне уведомление, что за сутки…

2 года ago

Как наложить watermark на видео в python windows массово

Тестирую одну схему, и нужно на много видео наложить watermark. Решил делать через Python 3,…

3 года ago

Kwork.ru: опыт поиска исполнителя и поздравление

Пришла в голову одна интересная идея. Связанно с тиктоком. Решил поискать исполнителя, который будет монтировать…

3 года ago

Отзыв о Накрутке подписчиков instagram через Socpublic в автоматическом режиме

Решил проверить "автоматическую" накрутку подписчиков в инстаграмме через сервис активной рекламы Socpublic.com. Сразу скажу -…

3 года ago