WordPress: inviare e-mail con allegati

Short link

WordPress ci permette di aggiungere allegati alle e-mail con relativa semplicità.

La funzione wp_mail() può avere come ultimo parametro un array contenente il percorso assoluto ai file che vogliamo allegare.

Gli allegati devono essere prima uploadati sul server e quindi usati con questa funzione:

$attachments = array( WP_CONTENT_DIR . '/uploads/allegato.zip' );
$headers = 'From: Sito <noreply@sito.com>' . "\r\n";
wp_mail( $to, $subject, $message, $headers, $attachments );

Se a noi interessa solo l’invio dell’allegato, possiamo rimuovere quest’ultimo dal server dopo l’invio:

if( wp_mail( $to, $subject, $message, $headers, $attachments ) ) {
    unlink( WP_CONTENT_DIR . '/uploads/allegato.zip' );
}