Независимо от типа сайта вы работаете, его успех будет, вероятно, зависеть от вашего взаимодействия с аудиторией.Если выполняется хорошо, одной из наиболее эффективных инструментов может быть простые email.
WordPress пользователи повезло, так как WordPress уже имеет простой в использовании и расширяемый функциями, чтобы дать вам много энергии и гибкости в обработке вашего сайта emails.
Для того, чтобы создать нашу собственную систему, мы будем делать четыре вещи.Во-первых, мы создадим хороший шаблон электронной почты для использования.Затем мы изменить функцию почтовой так, что она использует наш новый шаблон.Мы будем затем изменить сам текст некоторых из встроенных электронных писем.Затем мы приступим к подключить наши собственные письма в различные мероприятия для того, чтобы отправить некоторых пользовательских писем.Давайте начнем
Как WordPress отправляет Emails
WordPress есть удобная функция, встроенная в называется wp_mail()
, который обрабатывает мельчайших электронной почте отправка.Он способен обрабатывать почти все, что вы бросаете на нее, от таможенных электронной почты HTML для модификации “С” field.
WordPress сам использует эту функцию, и вы можете также с помощью WordPress крючки.Вы можете прочитать все о Как перехватывает работу в WordPress, но вот словах версия, и мы будем работать с ними в этой статье так много, что вы узнаете его end.
Крючки позволяют добавлять собственные функции для WordPress без изменения основных файлов.Без крючков, если вы хотите отправить публикацию уведомления автора сообщения, вы должны были бы найти функцию, которая опубликовала сообщение и добавить свой собственный код непосредственно к нему.С крючками, вы пишете функцию для отправки электронной почты, а затем подключить его в функцию, которая публикует сообщение.В принципе, вы говорите WordPress для запуска пользовательской функции, когда функция для публикации сообщений runs.
Настройка Shop
Первое, что мы должны сделать, это создать плагин.Мы могли бы обойтись без этого и просто использовать функции файл нашей теме, но это стало бы неуклюжим в долгосрочной перспективе.Не волнуйтесь: настройка плагина супер-easy.
К плагинов вашего сайта папку, которую можно найти в wp-content
.Создайте новую папку с именем my_awesome_email_plugin
.Если вы хотите другое имя, использовать что-то уникальное, не email
или email_plugin
, в противном случае могут возникнуть конфликты с другими plugins.
Создайте файл с именем my_awesome_email_plugin.php в новую папку.Имя файла (без расширения) должно быть таким же, как имя folder.
Редактировать содержимое my_awesome_email_plugin.php путем копирования и вставки приведенный ниже код и изменить его в случае необходимости.Это лишь некоторые стандартные информацию, которая WordPress используется, чтобы показать плагина в меню плагинов в админ area.
<?php /* Plugin Name: My Awesome Email Plugin Plugin URI: http://myawesomewebsite.com Description: I created this plugin to rule the world via awesome WordPress email goodness Version: 1.0 Author: Me Author URI: http://myself.me */ ?>
Как только это будет сделано, сохраните файл, перейдите в раздел администратора WordPress, иактивировать новый плагин.Если вы новичок в этом, то поздравляю!Вы только что создали свой первый рабочий WordPress плагин!Это действительно не имеет ничего делать, но пусть это вас не беспокоит вас.Просто читайте дальше, потому что мы будем добавлять некоторые функции после очередного section.
Создание E-mail Template
Создание хороших шаблонов электронной почты стоит статья сама по себе.Я просто поделиться метод, который я использую, но это не значит, что делают это по-разному, не допускается.Не стесняйтесь экспериментировать
Я не большой поклонник использования изображений в сообщениях электронной почты, так что мы будем строить HTML шаблонов с использованием только CSS.Наша цель, чтобы придумать шаблон для которых мы можем добавить заголовок и нижний колонтитул.Мы пошлем наших писем в WordPress, потянув в заголовке, поставив электронную почту текст под это, а затем тянут в подвал.Таким образом, вы можете изменить дизайн вашего сообщения электронной почты очень легко, просто путем изменения templates.
Без дальнейших церемоний, вот код для электронной почты шаблон, который я сделал.Или вы можете скачать его в виде HTML file (щелкните правой кнопкой мыши и выберите “Сохранить как”).Если вы хотите быстрый просмотр, как она выглядит, просто нажмите на link.
<html> <head> <title>The Subject of My Email</title> </head> <body> <div id="email_container" style="background:#444"> <div style="width:570px; padding:0 0 0 20px; margin:50px auto 12px auto" id="email_header"> <span style="background:#585858; color:#fff; padding:12px;font-family:trebuchet ms; letter-spacing:1px; -moz-border-radius-topleft:5px; -webkit-border-top-left-radius:5px; border-top-left-radius:5px;moz-border-radius-topright:5px; -webkit-border-top-right-radius:5px; border-top-right-radius:5px;"> MyAwesomeWebsite.com </div> </div> <div style="width:550px; padding:0 20px 20px 20px; background:#fff; margin:0 auto; border:3px #000 solid; moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; color:#454545;line-height:1.5em; " id="email_content"> <h1 style="padding:5px 0 0 0; font-family:georgia;font-weight:500;font-size:24px;color:#000;border-bottom:1px solid #bbb"> The subject of this email </h1> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa <strong>strong</strong>. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut. </p> <p> Imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede <a style="color:#bd5426" href="#">link</a> mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. </p> <p style=""> Warm regards,<br> The MyAwesomeWebsite Editor </p> <div style="text-align:center; border-top:1px solid #eee;padding:5px 0 0 0;" id="email_footer"> <small style="font-size:11px; color:#999; line-height:14px;"> You have received this email because you are a member of MyAwesomeSite.com. If you would like to stop receiving emails from us, feel free to <a href="" style="color:#666">unregister</a> from our mailing list </small> </div> </div> </div> </body> </html>
Помните, что это письмо, так что HTML не будет красивым.Самый безопасный стиль метода является встроенным, поэтому меньше излишеств вы можете сойти с рук, better.
Давайте разделить ее на две части.Части заголовка письма имеет все, начиная от верхней правой вплоть до h1
заголовком строке 23 (т.е. линии от 01 до 23).Скопируйте этот бит и вставьте его в новый файл в ваш my_email_plugin
папку, и назовите его email_header.php.Колонтитул часть письма все от пункта до тега “Теплые отношения” вплоть до конца (т.е. линии от 48 до 64).Текст между верхний и нижний колонтитулы это просто заполнитель, так что вы можете увидеть, что конечный продукт будет выглядеть.Мы заливаем его любым содержимым нам нужно отправить на time.
Подготовка системы WordPress для наших Emails
По умолчанию, WordPress отправляет текстовые сообщения.Для того, чтобы разместить наши фантазии HTML электронной почте, мы должны сказать wp_mail()
функции использовать HTML формате.Мы также создали пользовательскую “From” имя и адрес «От» в процессе, так что письмо выглядит хорошо в почтовый ящик каждого.Чтобы достичь этого, мы будем использовать упомянутые выше крючка.Давайте посмотрим на код; объяснение follows.
add_filter ("wp_mail_content_type", "my_awesome_mail_content_type"); function my_awesome_mail_content_type() { return "text/html"; } add_filter ("wp_mail_from", "my_awesome_mail_from"); function my_awesome_mail_from() { return "hithere@myawesomesite.com"; } add_filter ("wp_mail_from_name", "my_awesome_mail_from_name"); function my_awesome_email_from_name() { return "MyAwesomeSite"; }
В строке 01, мы определили, что мы добавляем фильтр к функции WordPress wp_mail_content_type()
.Наш фильтр будет называться my_awesome_mail_content_type
.Фильтр является не более чем функция, поэтому мы должны создать функцию my_awesome_mail_content_type()
.
Помните, что действия функции вызываются из другой функции?Мы добавляем действие на wp_insert_user()
функции, а действие выполняется, когда wp_insert_user()
работает.Фильтры задаются таким же способом, но, вместо того, наряду сфункции, которые она вызывается, она изменяет значение лица, что называется on.
В нашем случае это означает, что где-то внутри wp_mail()
функции является переменной, которая содержит электронный тип, который по умолчанию составляет text/plain
.Фильтр крюк wp_mail_content_type
называется на эту переменную, которая означает, что все вложенные фильтры будут работать.Мы, оказывается, приложил к нему фильтр на линии 01, так что наша функция будет выполнять свою задачу.Все, что нам нужно сделать, это вернуть значение text/html
, который будет изменить значение переменной в wp_mail
функция text/html
.
Логика остальной код в точности то же самое.Добавление фильтра до wp_mail_from
позволяет изменить адрес отправителя до hithere@myawesomewebsite.com
, и добавление фильтра до wp_mail_from_name
позволяет изменить отправителя name.
Изменение существующей системы WordPress Emails
Приветственное Новый Users
Это содержание по умолчанию WordPress email.
Как уже упоминалось, WordPress имеет кучу встроенных электронных писем, которые можно легко управлять (с помощью крючков, конечно).Давайте изменим электронной почты по умолчанию приветствие, WordPress отправляет для новых пользователей.». Подключаемой функцией” Это сообщение отправляется с использованием так называемых Эта функция поставляется WordPress, но, в отличие от обычных основных функций, вы имеете право переписать его с вашей собственной code.
Функции в вопросе называется wp_new_user_notification()
.Чтобы изменить ее, все, что нужно сделать, это создать функцию с тем же именем.В связи с методом, которым WordPress называет подключаемых функций, там не будет никаких конфликтов, даже если вы создаете функцию с тем же именем.Ниже приводится функция, которую я написал.См. объяснение и просмотр его дальнейшего below.
function wp_new_user_notification($user_id, $plaintext_pass) { $user = new WP_User($user_id); $user_login = stripslashes($user->user_login); $user_email = stripslashes($user->user_email); $email_subject = "Welcome to MyAwesomeSite ".$user_login."!"; ob_start(); include("email_header.php"); ?> <p>A very special welcome to you, <?php echo $user_login ?>. Thank you for joining MyAwesomeSite.com!</p> <p> Your password is <strong style="color:orange"><?php echo $plaintext_pass ?></strong> <br> Please keep it secret and keep it safe! </p> <p> We hope you enjoy your stay at MyAwesomeSite.com. If you have any problems, questions, opinions, praise, comments, suggestions, please feel free to contact us at any time </p> <?php include("email_footer.php"); $message = ob_get_contents(); ob_end_clean(); wp_mail($user_email, $email_subject, $message);
Как вы можете видеть, функции передаются два аргумента: идентификатор нового пользователя и сгенерированный пароль.Мы будем использовать это для получения переменной части нашего сообщения.В строке 2, мы создали объект пользователя, который будет содержать данные пользователя в вопрос.В строке 7, мы создали тему сообщения, используя переменную $email_subje ...
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров