wordpressEstàs davant de problemes d'enviament de correus electrònics de WordPress? El correu electrònic de WordPress s'envia usant la funció de correu electrònic de PHP. De vegades, el vostre allotjament web no configura correctament la configuració del correu. Com a resultat, no es poden enviar correus electrònics des del vostre lloc web.

Es pot utilitzar el plugin Easy WP SMTP, o el plugin WP Mail SMTP entre altres, que enviaran correus electrònics mitjançant servidors SMTP. Però sempre recomanem que si alguna cosa es pot aconseguir, escrivint una petita part del codi, serà millor que fer ús d'un altre plugin (extensió o connector) més.

És una bona pràctica utilitzar tant menys connectors al vostre lloc web de WordPress. L'ús de més connectors al lloc web també augmenta la càrrega addicional al servidor. I de vegades el connector entra en conflicte amb altres, el que es tradueix en el trencament del lloc.

 

Configurar el servidor SMTP en WordPress sense plugin

Abans de continuar, haureu d'estar preparat amb els detalls com l'amfitrió SMTP, el port SMTP, el nom d'usuari SMTP i la contrasenya SMTP. Si heu planejat utilitzar l'amfitrió SMTP de Gmail, heu de canviar alguns paràmetres del vostre compte de Google:

  1. Accediu al vostre compte de Google i feu clic a 'Compte de Google'.
  2. Una vegada que estigueu a la pàgina 'Compte de Google', feu clic a 'Seguretat'.
  3. A la pàgina següent, desplaceu-vos cap avall fins a la part inferior i trobareu la configuració 'Accés d'aplicacions menys segures', 'Activa l'accés (opció no recomanada)', i activeu 'Permet l'accés a les aplicacions menys segures'.

WordPress proporciona un ganxo 'phpmailer_init', que ens permet connectar a l'objecte PHPMailer i posar els nostres propis arguments.

Modificar l'arxiu functions.php

L'arxiu que cal modificar perquè WordPress ens permeta enviar e-mails des de SMTP es diu functions.php. L'arxiu functions.php no pertany al core de WordPress, sinó que es troba en el theme que s'estiga utilitzant en WordPress (Teme Actiu). Això és important recordar-ho, ja que si es canvia de theme els canvis que s'hagen realitzat a l'arxiu functions.php es perdran.

Les modificacions realitzades en aques arxiu poden fer que WordPress deixe de funcionar, de manera que caldrà realitzar una còpia de seguretat del mateix abans de modificar-lo, si no s'ha realitzat encara, aquest és bon moment per fer-ho. Afegint codi a l'arxiu functions.php es poden fer modificacions importants en el comportament de WordPress, per la qual cosa cal tindre molta cura en modificar-lo, per no provocar errors imprevistos.

Localitzar l'Arxiu functions.php

Per localitzar l'arxiu functions.php usant un client d'FTP, per exemple, FileZilla, cal dirigir-se a la carpeta que continga el theme que estiga actiu i s'estiga usant en WordPress. Habitualment, la ruta serà una cosa semblant a aquesta:

public_html/wp-content/themes/El nostre Theme/functions.php

Ara, obriu el fitxer de functions.php del teme actiu i col·loqueu el codi que hi ha a sota, all final del fitxer.

add_action( 'phpmailer_init', 'set_phpmailer_details' );
function set_phpmailer_details( $phpmailer ) {
    $phpmailer->isSMTP();  // Defineix que estem enviant per SMTP.
    $phpmailer->Host = 'smtp.exemple.com';  // El teu Host SMTP.
    $phpmailer->SMTPAuth = true; // Forçar-lo a utilitzar el nom d'usuari i la contrasenya per autenticar-se.
    $phpmailer->Port = 25;  // Port SMTP, sol ser el 25, 465 o 587.
    $phpmailer->Username = 'el_teu_nom_d'usuari';  // Usuari del compte de correu.
    $phpmailer->Password = 'la_teua_contrasenya';  // Contrasenya del compte de correu per a l'autenticació SMTP.
    $phpmailer->SMTPSecure = "tls";  // Trieu SSL o TLS, si és necessari per al vostre servidor.
    $phpmailer->From = "Aquesta adreça de correu-e està protegida dels robots de spam.Necessites Javascript habilitat per veure-la.";  // El teu compte de correu.
    $phpmailer->FromName = "De_Nom";  // El teu nom o nom del lloc.
}

Assegureu-vos de reemplaçar els marcadors de posició amb els valors reals. Posem per cas que estem utilitzant el servidor de correu SMTP de Gmail aleshores el nostre codi es veurà com a continuació:

add_action( 'phpmailer_init', 'set_phpmailer_details' );
function set_phpmailer_details( $phpmailer ) {
    $phpmailer->isSMTP();
    $phpmailer->Host = 'smtp.gmail.com';
    $phpmailer->SMTPAuth = true;
    $phpmailer->Port = 465;
    $phpmailer->Username = 'GMAIL_NOM_USUARI';
    $phpmailer->Password = 'GMAIL_CONTRASENYA';
    $phpmailer->SMTPSecure = "ssl";
    $phpmailer->From = "Aquesta adreça de correu-e està protegida dels robots de spam.Necessites Javascript habilitat per veure-la.";
    $phpmailer->FromName = "InfoRoigPv";
}

 

Nota: Com a norma de seguretat, no es recomana utilitzar WordPress i PHP per enviar els emails en casos d'enviaments de newsletters i mailmarketing, evitant així les llistes negres de spam (correu brossa). Amb els exemples de configuració, configurarem de manera òptima l'enviament de correus en WordPress, en cas contrari entraries a formar part de les llistes negres de spammers en qüestió de dies.