Intereting Posts
Просмотр / редактирование веб-сайта Multisite после истечения срока действия домена Изменить плагин PHP-класс в дочерней теме – правильный метод Как я могу отображать / скрывать определенный контент на основе поля «Тема»? Хранение массива значений в вариантах wordpress Изменен префикс wp_. Каким образом можно изменить любой префикс? API для создания блогов на Multisite? Добавить архивный пул в стандартный пост-пост Как эффективно загружать и использовать API WordPress извне исходной структуры Как добавить настраиваемые фильтры запросов в WP_User_Query Показать иерархическую взаимосвязь между настраиваемыми типами сообщений в списке admin current_user_can ('administrator') не работает в пользовательском входе Добавление «продолжить редактирование моего последнего черновика» в панель администратора API настройки для разработки плагинов Какой идентификатор использует WordPress для отображения опубликованных / составленных сообщений в режиме предварительного просмотра? Сжимать папку с помощью WordPress?

wp_mail не распознает заголовки cc и bcc

Я использую WordPress 3.1.3

Я получаю следующие уведомления, когда я использую wp_mail с заголовками cc и bcc.

Notice: Undefined variable: cc in /var/www/mysite.info/htdocs/wordpress/wp-includes/pluggable.php on line 349 Notice: Undefined variable: bcc in /var/www/mysite.info/htdocs/wordpress/wp-includes/pluggable.php on line 352 

Вот как я устанавливаю заголовки электронной почты

 $email_headers = "From: ".$from_field_value.PHP_EOL; $email_headers .= "Reply-To: ".$from_field_value.PHP_EOL; $email_headers .= "CC: mail@gmail.com".PHP_EOL; $email_headers .= "BCC: mail@gmail.com".PHP_EOL; if (wp_mail($email_to, $email_subject, $email_body, $email_headers)) { // Other process } 

Solutions Collecting From Web of "wp_mail не распознает заголовки cc и bcc"

Если вы посмотрите на строку, выдается уведомление:

 $cc = array_merge( (array) $cc, explode( ',', $content ) ); 

а также

 $bcc = array_merge( (array) $bcc, explode( ',', $content ) ); 

То, что он пытается сделать, это объединить пустой массив, который не был задан с массивом, созданным вашими заголовками.

Уведомление можно игнорировать. В конце концов, это просто уведомление.

Поскольку эта функция подключается, вы можете скопировать функцию и поместить ее в файл плагина и исправить код. Таким образом, вы не редактируете файлы ядра. См. Подключаемые функции:

http://codex.wordpress.org/Pluggable_Functions

Я бы изменил код следующим образом:

 case 'cc': if (!isset($cc)) $cc = array(); $cc = array_merge( $cc, explode( ',', $content ) ); break; case 'bcc': if (!isset($bcc)) $bcc = array(); $bcc = array_merge( $bcc, explode( ',', $content ) ); break; 

Может быть, это должно быть сообщено команде wordpress core dev?

ОБНОВИТЬ:

Выше будет зафиксировано в WP3.2 http://core.trac.wordpress.org/changeset/18006