HappyForms

Отличный плагин форм для сайтов на WordPress

Работаю с WordPress более 5 лет. И все это время боль доставляло отсутствие адекватных плагинов форм. Все что были — были либо аляповатыми, либо нарушали единство дизайна WordPress.

И вот спустя 5 лет поиски увенчались успехом!

Особенности:

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

Но встретил с ним проблему отправки почты

На сайте отправка почты интегрирована с SendGrid. Почему то некоторые письма на уходили. Сделал отладку и увидел что он добавляет header From: — пустой.

Пришлось написать мелкий сниппет в mu-plugins, который фиксил эту проблему:

<?php
/*
* Plugin Name: @Fix wp_mail for HappyForms
* Description: Фиксим проблему HappyForms с пустым заголовком 'From: ' - для того чтобы почта нормально уходила
* Author: uptimizt
* Author URI: https://github.com/uptimizt/
* Version: 0.1
*/

add_filter( 'wp_mail', function($args){

    if( ! empty($args['headers'])){
        foreach ($args['headers'] as $key => $value) {
            if($value == 'From: '){
                unset($args['headers'][$key]);
            }
        }
    }
    return $args;
} );