2012-03-17 2 views
0

Я планирую использовать PHPMailer, который поставляется вместе с Wordpress.
Я буду отправлять электронную почту HTML, включая альтернативную почту txt, используя SMTP.Каков наилучший способ создания электронных писем по умолчанию?

У меня будут разные электронные письма в зависимости от действия пользователя (регистрация, запрос и т. Д.).

Я не уверен, что это лучший способ, но я собираюсь создать папку, содержащую HTML-файлы, например. /emails/confirm_registration.html.

Тогда я принесу содержание и поместить его в теле письма $mail->Body=$message;

Я также хочу, чтобы включать переменные, такие как имена пользователей в тексте.

Так вот мой вопрос:

Должен ли я поместить текст тела внутри функции, вызвать ее с параметрами, а затем вернуть содержимое?

Нужно ли добавлять заполнители, такие как {first-name}, в HTML и использовать str_replace('{first-name}','Some name') после того, как я вернул содержимое html?

Если у вас есть лучшие предложения, я бы очень признателен.

+0

Я думаю, что ваш второй вариант позволяет вам проявлять большую гибкость. Таким образом, все электронные письма, которые вы создаете для загрузки и отправки из одной и той же функции, вам нужно передать им «шаблонный» файл. – mikevoermans

ответ

1

Могу ли я предложить вам использовать SwiftMailer в качестве электронной библиотеки
http://swiftmailer.org/
Эта библиотека является действительно стабильной, элегантный и полный. Ваш метод замены заполнителей текстом является стандартным и работает, если я помню, что многие распространенные библиотеки шаблонов, например smarty, используют очень похожую методологию.

+0

Благодарим за отзыв. Я посмотрел на «Swiftmailer», но потом выяснил, что WP уже имеет «PHPMailer», поэтому я подумал, что сначала дайте ему понять. – Steven

0

Я всегда использую этот метод в своем пользовательском программировании, он кажется идеальным для меня.

+0

Um .... какой способ? – Steven

+0

, о котором вы упомянули в своем вопросе :) –

+0

Мне приходилось выбирать. Я пошел на второй вариант. – Steven

Смежные вопросы