Code snippets

Emails sturen in WordPress

Voor een eenvoudig contactformulier kan ja het beste een plugin gebruiken. Contact form 7 bijvoorbeeld. Maar soms wil je wat meer maatwerk: een met een cronjob gegenereerde email (bijvoorbeeld elke maand, of elke week).

In dat geval kan je in WordPress eenvoudig zelf je email genereren. Emailen op je locale systeem is een beetje gedoen om in te stellen. Met WP-Mail-SMTP kan je ook op je eigen systeem supermakkelijk emails instellen. Wel opletten: als je je vergist gaan er misschien mails naar gebruikers, of erger, tientallen mails…

Om dat te voorkomen kan je Stop Emails installeren. Als je wilt worden de mails keurig in de errorlog gezet. Nou kan je rustig testen šŸ™‚

Voeg onderstaande functie toe aan je functions.php

if (dtc_sendmail(“email@email.com”, “onderwerp”, “<html>email html</html>”)) {
echo “mail gestuurd”;
}

/*Send html emails*/

function dtc_sendmail($to, $subject, $body) {
$headers = array();
add_filter( ‘wp_mail_content_type’, function( $content_type ) {return ‘text/html’;});
$headers[] = ‘From: afzender email <emailadres@domein.nl>’.”\r\n”;

$success = true;
if(wp_mail( $to, $subject, $body, $headers) === false) $success = false;

// Reset content-type to avoid conflicts — http://core.trac.wordpress.org/ticket/23578
remove_filter( ‘wp_mail_content_type’, array($this, ‘set_html_content_type’)Ā  );
return $success;
}

Related Articles

Laat een reactie achter