Надіслати листа автору поста WordPress та CF7
Сьогодні я розповім як я справлявся з одним цікавим завданням. У клієнта був статейник із кількома авторами і кожен автор мав отримувати листи зі своїх власних статей. Для вирішення цього завдання ми зареєстрували для кожного автора окремий обліковий запис і вказали пошти авторів.
Далі було завдання у популярний плагін Contact form 7 ( CF7 ) додати email автора поточної статті або зі сторінки автора. Після не більшого мозкового штурму, десятка випитих чашок кави та пошуків у google я знайшов рішення. Як завжди проблема була вирішена досить просто, як і все в WordPress. Для виведення динамічної адреси плагін контактної форми я використовував додатковий плагін Contact Form 7 Розширення динамічного тексту, за допомогою нього я зміг легко передати динамічне значення в одне з полів форми.
Розглянемо кроки відправлення листів автору посту за допомогою плагіна Contact Form 7 (Cf7)
- Встановлюємо плагіни Contact Form 7 и Контактна форма 7 Dynamic Text Extension та створіть нову контактну форму з плагіном CF7.
- Додаємо будь-які необхідні поля у форму та обов'язково додаємо приховане динамічне поле як показано нижче. Назвіть динамічне поле custom-post-author-email-short-code та додайте ім'я короткого коду CUSTOM_POST_AUTHOR_EMAIL у полі Dynamic value!
- Тепер натисніть на вкладку Пошта форми CF7 та заповніть поле «Кому надсилати Email», використовуючи шорткод: [custom-post-author-email-shortcode]. За допомогою цього налаштування ми добиваємося того, щоб наша контактна форма надсилала повідомлення на нашу адресу електронної пошти, що динамічно генерується..
- Реєстраційний шорткод, щоб отримати адресу електронної пошти поточного автора посту. Ми створюємо новий шорткод для цієї роботи за допомогою WordPress Shortcode API! Ви можете помістити код у новий плагін або у свій файл functions.php:
1 2 3 4 5 6 7 8 9 10 11 12 |
/** * Отправляем письмо автору поста на его email. */ function custom_get_post_author_email($atts){ $value = ''; if(get_the_author_meta( 'user_email' )) { $value = get_the_author_meta( 'user_email' ); } return $value; } add_shortcode(CUSTOM_POST_AUTHOR_EMAIL, custom_get_post_author_email); |
/*
- Базовий курс з веб-дизайну;
- Верстка сайтів;
- Загальний курс CMS WordPress та продовження курсу з розробки шаблонів;
- Розробка сайтів на PHP.