Меню категорій

Відправка email у стилі WooCommerce із функції WordPress

Іноді потрібно налаштувати додатковий функціонал по надсиланню листів. Щоб не писати новий шаблон для листа, відправляй його в стилі WooCommerce.
Категорії: Wordpress

При встановленні WooCommerce ти отримуєш додатково готовий функціонал для надсилання електронних листів. І якщо тобі треба додати якусь одну умову для надсилання листа (наприклад, коли на сайті була створена користувацька сторінка чи заповнене якесь опитування), то писати для цього спеціальний шаблон – трішки марудна справа. А надсилати звичайний текстовий лист – занадто банально, ми ж не в середньовіччі 😂

Ось тут прийде на допомогу одна дуже легка функція. Традиційно прописуємо її в будь-якому доступному для WordPress місці, найкраще – у файлі functions.php твоєї теми:

function send_email_woocommerce_style($email, $subject, $heading, $message)
{
    define("HTML_EMAIL_HEADERS", array('Content-Type: text/html; charset=UTF-8'));
    $mailer = WC()->mailer();
    $wrapped_message = $mailer->wrap_message($heading, $message);
    $wc_email = new WC_Email;
    $html_message = $wc_email->style_inline($wrapped_message);
    $mailer->send($email, $subject, $html_message, HTML_EMAIL_HEADERS);
}

Тепер у будь-якому місці WordPress, де раніше ти б використовував/ла щось типу:

mail($to, $subject, $message, $headers);

використовуєш власну функцію send_email_woocommerce_style:

send_email_woocommerce_style($to, $subject, $heading, $message);

Зверни увагу – аргументи функції відрізняються від вбудованої в PHP mail:

Ти ж погоджуєшся, що отримувати отакі листи цікавіше, ніж звичайні текстові? 😉

Шаблони Email

Раджу прочитати:

Прокоментувати

На сайті відображається лише твоє ім'я та коментар. Електронна пошта зберігається виключно для зв'язку з тобою за потреби та в жодному разі не передається стороннім особам.

Цей сайт захищений системою reCAPTCHA від Google. Політика конфіденційності та Загальні положення та умови.