- Описание функции
- Примеры использования
- Отправка простого текстового письма
- Прикрепление файла к письму
- Использование дополнительных заголовков
- Отправка письма с несколькими получателями
- Вопросы и ответы
- Как отправить письмо с вложениями?
- Как указать дополнительные заголовки в письме?
- Как отправить письмо с разными адресатами?
- Как проверить, было ли успешно отправлено письмо?
- Как отправить письмо с HTML-форматированием?
- Как отправить письмо с определенным отправителем?
- Как отправить письмо с подтверждением прочтения?
- Связанные элементы
Описание функции
Функция wp_mail() используется для отправки электронной почты, аналогично функции mail() в PHP. Она предоставляет удобный способ отправки писем из WordPress-сайта.
Эта функция использует встроенную функцию PHPMailer для отправки писем. Она позволяет отправлять письма с использованием SMTP-сервера, а также обеспечивает поддержку различных кодировок и вложений.
Использование
wp_mail( string|string[] $to, string $subject, string $message, string|string[] $headers = '', string|string[] $attachments = array() ): bool Функция wp_mail() принимает следующие параметры:
$to(обязательный) — Строка или массив с адресами электронной почты, на которые нужно отправить сообщение.$subject(обязательный) — Тема письма.$message(обязательный) — Содержимое письма.$headers(необязательный) — Дополнительные заголовки письма. По умолчанию: пустая строка.$attachments(необязательный) — Пути к файлам, которые нужно прикрепить к письму. По умолчанию: пустой массив.
Функция wp_mail() возвращает логическое значение true, если письмо было успешно отправлено.
<?php
$to = 'user@example.com';
$subject = 'Привет от WordPress!';
$message = 'Привет, это тестовое письмо из WordPress!';
$headers = array(
'From: WordPress <wordpress@example.com>',
'Content-Type: text/html; charset=UTF-8'
);
$attachments = array( '/path/to/file1.pdf', '/path/to/file2.jpg' );
$result = wp_mail( $to, $subject, $message, $headers, $attachments );
if ( $result ) {
echo 'Письмо успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
?> В этом примере мы отправляем письмо на адрес user@example.com с темой «Привет от WordPress!» и содержимым «Привет, это тестовое письмо из WordPress!». Мы также указываем отправителя и тип контента письма в заголовках. Вложениями являются файлы file1.pdf и file2.jpg. Результат отправки письма выводится на экран.
Примеры использования
Отправка простого текстового письма
$to = 'user@example.com';
$subject = 'Привет от WordPress!';
$message = 'Привет, это пример использования функции wp_mail()!';
$headers = array('Content-Type: text/html; charset=UTF-8');
$result = wp_mail($to, $subject, $message, $headers);
if ($result) {
echo 'Письмо успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
Прикрепление файла к письму
$to = 'user@example.com';
$subject = 'Привет от WordPress!';
$message = 'Привет, это пример использования функции wp_mail() с прикрепленным файлом!';
$headers = array('Content-Type: text/html; charset=UTF-8');
$attachments = array('/path/to/file.pdf');
$result = wp_mail($to, $subject, $message, $headers, $attachments);
if ($result) {
echo 'Письмо с прикрепленным файлом успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
Использование дополнительных заголовков
$to = 'user@example.com';
$subject = 'Привет от WordPress!';
$message = 'Привет, это пример использования функции wp_mail() с дополнительными заголовками!';
$headers = array(
'Content-Type: text/html; charset=UTF-8',
'From: WordPress <wordpress@example.com>',
'Cc: anotheruser@example.com',
'Bcc: hiddenuser@example.com'
);
$result = wp_mail($to, $subject, $message, $headers);
if ($result) {
echo 'Письмо с дополнительными заголовками успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
Отправка письма с несколькими получателями
$to = array('user1@example.com', 'user2@example.com');
$subject = 'Привет от WordPress!';
$message = 'Привет, это пример использования функции wp_mail() с несколькими получателями!';
$headers = array('Content-Type: text/html; charset=UTF-8');
$result = wp_mail($to, $subject, $message, $headers);
if ($result) {
echo 'Письмо с несколькими получателями успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
Вопросы и ответы
Как отправить письмо с вложениями?
Для отправки письма с вложениями в функцию wp_mail() необходимо передать путь к файлам, которые нужно прикрепить. Это делается с помощью параметра $attachments.
$to = 'recipient@example.com';
$subject = 'Письмо с вложениями';
$message = 'Привет, вот вложение!';
$headers = array('Content-Type: text/html; charset=UTF-8');
$attachments = array('/path/to/file1.pdf', '/path/to/file2.jpg');
wp_mail($to, $subject, $message, $headers, $attachments);
Как указать дополнительные заголовки в письме?
Для указания дополнительных заголовков в письме используется параметр $headers. В него можно передать строку или массив с заголовками.
$to = 'recipient@example.com';
$subject = 'Письмо с дополнительными заголовками';
$message = 'Привет, это письмо с дополнительными заголовками!';
$headers = array(
'From: sender@example.com',
'Cc: cc@example.com',
'Bcc: bcc@example.com',
'Content-Type: text/html; charset=UTF-8'
);
wp_mail($to, $subject, $message, $headers);
Как отправить письмо с разными адресатами?
Для отправки письма с разными адресатами можно передать в параметр $to массив с email-адресами или использовать запятую для разделения адресов в виде строки.
$to = array('recipient1@example.com', 'recipient2@example.com');
$subject = 'Письмо с разными адресатами';
$message = 'Привет, это письмо с разными адресатами!';
wp_mail($to, $subject, $message);
Как проверить, было ли успешно отправлено письмо?
Функция wp_mail() возвращает значение типа bool, указывающее, было ли письмо успешно отправлено. Если письмо отправлено успешно, функция вернет true, в противном случае — false.
$to = 'example@example.com';
$subject = 'Тестовое письмо';
$message = 'Привет, это тестовое письмо!';
$headers = array('Content-Type: text/html; charset=UTF-8');
$result = wp_mail($to, $subject, $message, $headers);
if ($result) {
echo 'Письмо успешно отправлено!';
} else {
echo 'Ошибка при отправке письма.';
}
Как отправить письмо с HTML-форматированием?
Для отправки письма с HTML-форматированием, необходимо указать соответствующий заголовок в параметре $headers. В заголовке следует указать тип контента как text/html.
$to = 'example@example.com';
$subject = 'Тестовое письмо с HTML';
$message = '<h1>Привет</h1><p>Это тестовое письмо с HTML-форматированием.</p>';
$headers = array('Content-Type: text/html; charset=UTF-8');
wp_mail($to, $subject, $message, $headers);
Как отправить письмо с определенным отправителем?
Для отправки письма с определенным отправителем, необходимо указать соответствующий заголовок в параметре $headers. В заголовке следует указать адрес отправителя с помощью заголовка From.
$to = 'example@example.com';
$subject = 'Тестовое письмо с определенным отправителем';
$message = 'Привет, это тестовое письмо с определенным отправителем.';
$headers = array('From: John Doe <johndoe@example.com>', 'Content-Type: text/html; charset=UTF-8');
wp_mail($to, $subject, $message, $headers);
Как отправить письмо с подтверждением прочтения?
Для отправки письма с подтверждением прочтения, необходимо указать соответствующий заголовок в параметре $headers. В заголовке следует указать запрос на подтверждение с помощью заголовка Disposition-Notification-To.
$to = 'example@example.com';
$subject = 'Тестовое письмо с подтверждением прочтения';
$message = 'Привет, это тестовое письмо с подтверждением прочтения.';
$headers = array('Disposition-Notification-To: johndoe@example.com', 'Content-Type: text/html; charset=UTF-8');
wp_mail($to, $subject, $message, $headers);
Функция
wp_mail()в WordPress позволяет отправлять электронные письма с помощью PHP, аналогично функцииmail(). Она принимает несколько параметров, включая адресаты, тему письма, содержимое и дополнительные заголовки. Функция возвращает значение типаbool, указывающее, было ли письмо успешно отправлено. Для отправки писем с различными настройками, такими как HTML-форматирование, определенный отправитель или запрос на подтверждение прочтения, можно использовать соответствующие заголовки в параметре$headers.
Связанные элементы
- Функция
add_filter(): регистрирует новый фильтр для изменения данных перед их выводом. - Функция
add_action(): регистрирует новое действие, которое будет выполнено в определенный момент. - Функция
do_action(): вызывает все зарегистрированные действия для определенного момента. - Функция
apply_filters(): применяет все зарегистрированные фильтры к указанным данным. - Функция
get_option(): получает значение опции из базы данных. - Хук
init: срабатывает при инициализации WordPress и позволяет зарегистрировать дополнительные действия и фильтры. - Хук
wp_head: срабатывает внутри тега <head> на каждой странице WordPress и позволяет добавить дополнительный код или стили. - Хук
wp_footer: срабатывает перед закрывающим тегом </body> на каждой странице WordPress и позволяет добавить дополнительный код или скрипты. - Класс
WP_Query: используется для выполнения запросов к базе данных WordPress и получения соответствующих записей. - Класс
WP_User: представляет пользователя WordPress и предоставляет методы для работы с его данными.