我有以下代码可以向我的帐户发送一封电子邮件。但是,这在用户提交表单后大约需要 3-5 分钟。有没有办法减少递送时间,或者这只是 wp_mail() 函数一直需要的?这是我的代码:
if ($_POST['task-title'] && $_POST['task-description'] && $_FILES['task-files']['size']<20971520){
$mailto = array('example@email.com');
$subject = 'Task "'.$_POST['task-title'].'" ('.$_POST['task-priority'].')';
$body = 'Client: '.$user_name.'
Task title: '.$_POST['task-title'].'
Category: '.$_POST['task-category'].'
Priority: '.$_POST['task-priority'].'
Description:
'.$_POST['task-description'];
$headers = 'From: '.$user_name.'<'.$current_user->user_email.'>';
move_uploaded_file($_FILES["task-files"]['tmp_name'], WP_CONTENT_DIR.'/uploads/'.basename($_FILES['task-files']['name']));
$attachments = array(WP_CONTENT_DIR."/uploads/".$_FILES["task-files"]['name']);
wp_mail($mailto, $subject, $body, $headers, $attachments);
我考虑过设置一个 cronjob 以每分钟发送一次未发送的电子邮件,但我会再次使用 wp_mail(),所以无论如何它都是一样的,不是吗?
最佳答案
如果您发送附件,发送邮件需要一些时间。 您可以尝试一封没有附件的邮件,如果它运行速度很快,那么肯定是由于附件的大小。 还要检查服务器连接。 CPU 利用率。
关于php - wp_mail() 函数发送单个邮件花费的时间太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37942951/