Kan ik WordPress e-mail met SMTP laten versturen? Ja, in dit artikel leggen we je uit hoe je uitgaande SMTP correct instelt in WordPress. Het is belangrijk dat je dit met SMTP authenticatie doet over een met SSL/TLS-beveiligde verbinding.

E-mail via authenticated SMTP en over een TLS-beveiligde verbinding versturen biedt een grotere zekerheid van het aankomen van e-mails bij de ontvangers. Als je dit anoniem via de webserver localhost verstuurt, dan wordt het sneller als spam aangemerkt.

Dit artikel behandelen we drie (3) plugins, namelijk SMTP Mailer, WP Mail SMTP by WPForms en Post SMTP Mailer/Email Log.

Ook laten we één methode zien waarbij je eigen code gebruikt. Als je een andere plugin wilt gebruiken dan is het belangrijk dat deze STARTTLS ondersteunt. Steeds zijn de instellingen die je moet gebruiken hetzelfde.

Zorg ervoor dat je in ieder geval een e-mailaccount bij Vevida beschikbaar hebt, en de daarbij behorende inloggegevens (e-mailadres + wachtwoord). De in dit artikel gebruikte gegevens zijn fictief. Vervang info@example.nl en het-wachtwoord door de inloggegevens van jouw e-mailaccount.

Let op: vaak zetten plugins je wachtwoord leesbaar in de database! Zorg ervoor dat dit verwijderd wordt als je een plugin niet meer gebruikt en verwijdert.

Link naar deze kopSMTP Mailer

De SMTP Mailer plugin maakt een menu-item aan onder Instellingen, genaamd SMTP Mailer. Hier kun je in één pagina de volgende instellingen maken:

  • SMTP host: smtp.vevida.com
  • SMTP authenticatie: Ja
  • SMTP gebruikersnaam: e-mailadres (bijv. info@example.nl)
  • SMTP wachtwoord: het-wachtwoord van het account
  • Type versleuteling: TLS
  • SMTP poort: 587
  • E-mailadres afzender: e-mailadres (bijv. info@example.nl)
  • Naam afzender: Je naam
  • SSL verificatie uitschakelen: Nee, dus uitgevinkt laten

Sla de instellingen op met de knop Wijzigingen opslaan. Via kun je via de tab “Test e-mail”stuur je eenvoudig een testbericht.

Link naar deze kopWP Mail SMTP

Heb je WP Mail SMTP by WPForms éénmaal geïnstalleerd en geactiveerd, dan vind je een menu-item WP-Mail-SMTP onder Instellingen. De volgende instellingen neem je op onder Algemeen:

  • E-mailadres afzender: e-mailadres vanwaaruit de e-mails worden gestuurd (bijv. info@example.nl)
  • Mailer: Andere SMTP-service aanvinken

Onderdeel Andere SMTP-service

  • SMTP-host: smtp.vevida.com
  • Versleuteling: TLS
  • SMTP-poort: 587
  • Auto-TLS: Aan
  • Authenticatie: Aan
  • SMTP-gebruikersnaam: e-mailadres (bijv. info@example.nl)
  • SMTP-wachtwoord: het-wachtwoord van het account

Klik hierna op de knop Instellingen Opslaan. Via de tab E-mailtest kun je nu een test e-mail sturen.

Link naar deze kopPost SMTP Mailer/Email Log

Als Post SMTP Mailer/Email Log geïnstalleerd en geactiveerd, dan vind je de plugin-opties via het nieuwe menu-item Post SMTP. Toon alle instellingen is de meest snelle manier om de plugin te configureren voor authenticated SMTP en StartTLS.

Tabblad Account

Onderdeel Transport:

  • Type: SMTP
  • Mailer type: PostSMTP

Onderdeel Transport instellingen:

  • Uitgaande e-mailserver hostnaam: smtp.vevida.com
  • Uitgaande e-mailserver poort: 587
  • Envelope-From e-mailadres: e-mailadres (bijv. info@example.nl)
  • Beveiliging: STARTTLS
  • Authenticatie: Plain

Onderdeel Authenticatie:

  • Gebruikersnaam: e-mailadres (bijv. info@example.nl)
  • Wachtwoord: het-wachtwoord van het account

Ga naar het tabblad Bericht, vul bij E-mailadres je e-mailadres weer in.

Hierna klik je Wijzigingen opslaan en via verstuur een testbericht kun je nu een test e-mail sturen.

Via het menu-item E-mail log kun je een log inzien van alle verzonden e-mailberichten. Dat kan handig zijn, maar dit kan ook erg snel heel veel worden. Verwijder logberichten regelmatig en leeg de prullenbak daarna.

Link naar deze kopAuth-SMTP plugin in eigen beheer

Voor geavanceerde WordPress-gebruikers! Vevida geeft hierop geen ondersteuning.

Als je niet afhankelijk wilt zijn van een externe pluginleverancier, of niet wilt dat het wachtwoord van je e-mailadres in de MySQL-database staat opgeslagen, dan kun je vrij eenvoudig je eigen plugin hiervoor ontwikkelen. Of de functionaliteit toevoegen aan je al bestaande site-specific plugin.

Ga als volgt te werk, een kort stappenplan:

  1. maak een map wp-eigen-smtp, met daarin het bestand wp-eigen-smtp.php. De map- en bestandsnaam mogen niet overeenkomen met een bestaande WordPress plugin. Voeg je eigen plugin-header eraan toe:
    <?php
    /**
     * Send authenticated SMTP email over TLS with WordPress
     * @wordpress-plugin
     * Plugin Name: Authenticated SMTP e-mail over TLS in WordPress
     * Plugin URI: https://vevida.com
     * Description: Sends email using authenticated SMTP (SMTP AUTH), over an TLS encrypted connection in WordPress.
     * Version: 1.4
     * Author: Jan Reilink
     * Author URI: https://www.saotn.org
     * License: GPL-2.0+
     * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
     */
     
    
  2. open het bestand wp-includes/pluggable.php en scroll naar regel 145 (GitHub link).
  3. kopieer en plak alle code vanaf if ( ! function_exists( 'wp_mail' ) ) :, inclusief de functie wp_mail, tot en met endif; op regel 550 in het eigen pluginbestand, onder de plugin-header.
  4. vervang endif; door afsluitende accolade }.
  5. zoek de regel $phpmailer->isMail(); en vervang dit door $phpmailer->isSMTP();.
  6. direct hieronder plaats je de volgende PHP-code:
    $phpmailer->SMTPSecure	= SMTP_SECURE;		// set security schema
    $phpmailer->SMTPAuth	= SMTP_AUTH;		// enable SMTP authentication
    $phpmailer->Port		= SMTP_PORT;		// set the SMTP server port
    $phpmailer->Host		= SMTP_HOST;		// SMTP server
    $phpmailer->Username	= SMTP_USER;		// SMTP server username
    $phpmailer->Password	= SMTP_PASS;		// SMTP server password
    $phpmailer->From		= SMTP_FROM;		// SMTP From email address
    $phpmailer->FromName	= SMTP_FROM_NAME;	// SMTP From name
    $phpmailer->SMTPDebug	= SMTP_DEBUG;		// debug can be very verbose

Upload je plugin (eventueel eerst inpakken als .zip-bestand).

Nu configureer je je eigen SMTP-mailer plugin door in wp-config.php de volgende instellingen op te nemen:

define( 'SMTP_USER', 'info@example.nl' );
define( 'SMTP_PASS', 'het-wachtwoord' );
define( 'SMTP_PORT', '587' );
define( 'SMTP_SECURE', 'tls' );
define( 'SMTP_AUTH', true );
define( 'SMTP_HOST', 'smtp.vevida.com' );
/* als je een ander From-adres opgeeft */
define( 'SMTP_FROM', 'afzender@example.nl' );
/* naam v/d afzender */
define( 'SMTP_FROM_NAME', 'Vevida WP hosting' );

/* alleen voor debugging, zet dan op 1 of 2
	pas op voor wachtwoorden op het scherm */
define( 'SMTP_DEBUG', 0 );

Activeer je plugin en e-mails die WordPress nu verstuurt met de wp_mail() functie gaan via authenticated SMTP over een beveiligde TLS-verbinding.

Dit heeft het lichte voordeel dat het wachtwoord van je e-mailaccount niet in de database staat. Een nadeel is dat je regelmatig de code in wp-includes/pluggable.php moet controleren, het kan maar zo stoppen met functioneren. Vanwege updates in dit pluggable.php-bestand kunnen genoemde regelnummers afwijken van de werkelijkheid.

Link naar deze kopBijzonderheden: SSL en poort 465 voor GMail

In de meeste plugins kan je ook GMail als uitgaande SMTP-server in WordPress gebruiken. In plaats van StartTLS en poort 587 stel je SSL en poort 465 in. Dit kan handig zijn als je smtp.gmail.com wilt gebruiken.

Maar let op: als je GMail SMTP wilt gebruiken moet je Toegang door minder goed beveiligde apps inschakelen in je Google Account. Dat is iets wat wij niet aanraden!

Wat vind jij van dit antwoord?

Bedankt voor je feedback!

Er is een fout opgetreden. Probeer het later opnieuw.