Почта отправлена, но вложение не получено в wp_mail ()

Я новичок в WordPress. Я пытаюсь отправить письмо с вложением. Но каждый раз, когда почта отправляется, а вложение — нет. Я искал почти все сообщения, связанные с этой темой здесь, но все решения не удалось для меня. Я много раз проверял путь и обнаружил, что он правильный из папки «uploads». Пожалуйста, помогите мне. Это мой код,

<?php

if(isset($_POST['email'])){

$to = $_POST['email'];
$pdf = $_POST['pdf'];

$subject = "Presidency Alumni Annual Report";
$message = "Please download the attachment.";
$headers = 'From: Presidency Alumni Association Calcutta <noreply@presidencyalumni.com>' . "\n";

if($pdf == 'a'){

$attachments = array(WP_CONTENT_DIR . 'uploads/2015/01/Coffee-Mug-Banner.jpg');
}
else if($pdf == 'b'){

$attachments = array(WP_CONTENT_DIR . 'uploads/2014/08/Alumni-Autumn-Annual-2014.pdf');
}
else{

$attachments = array(WP_CONTENT_DIR . 'uploads/2014/08/Autumn-Annual-2012.pdf');
}

wp_mail($to, $subject, $message, $headers, $attachments);

print '<script type="text/javascript">';
print 'alert("Your Mail has been sent successfully")';
print '</script>';
}
?>

0

Решение

Наиболее вероятная причина этого состоит в том, если условие if($pdf == 'a') {...} else if ($pdf == 'b') {...}) неправда. Проверьте, если эта переменная pdf правильно установлен в вашем посте HTML-формы.

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

<?php $upload_dir = wp_upload_dir(); ?>

$upload_dir теперь содержит что-то вроде следующего (в случае успеха):

Array (
[path] => C:\path\to\wordpress\wp-content\uploads\2010\05
[url] => http://example.com/wp-content/uploads/2010/05
[subdir] => /2010/05
[basedir] => C:\path\to\wordpress\wp-content\uploads
[baseurl] => http://example.com/wp-content/uploads
[error] =>
)

Затем измените ваш код:

$attachments = array($upload_dir['url'] . '/2014/08/Autumn-Annual-2012.pdf');

Увидеть документация.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector