Avaluació inicial sense contrasenyes Pressupost abans d’intervenir Un especialista responsable de principi a fi

Smtp I Php Mail

wp_mail() retorna true, però el correu no arriba

Entén què demostra wp_mail i segueix PHPMailer, acceptació SMTP, autenticació, rebots i filtratge de la bústia.

Un resultat true de wp_mail() significa que WordPress ha lliurat el missatge al mailer configurat sense un error immediat. No significa que el servidor SMTP l’hagi acceptat, que el gateway destinatari l’hagi lliurat o que l’usuari l’hagi vist.

Conserva aquest resultat com un control i continua seguint el mateix missatge.

Crea una prova rastrejable

Utilitza un destinatari sintètic sota el teu control, una referència única a l’assumpte i cap dada personal. Anota l’hora, l’entorn i la ruta de codi que ha cridat wp_mail().

Prova l’acció real del formulari o aplicació a més de la pantalla de test del plugin. Aquesta pot utilitzar capçaleres, destinatari i moment d’execució diferents.

Evita bucles de proves: els límits d’enviament poden ocultar el problema original.

Interpreta correctament el valor

WordPress construeix el missatge amb PHPMailer i aplica hooks abans d’intentar el lliurament. El booleà true indica que no s’ha notificat cap error síncron en aquesta etapa.

Amb PHP mail local, el sistema operatiu pot acceptar el missatge en una cua que el rebutgi després. Amb SMTP, un plugin pot registrar la connexió i la resposta del proveïdor.

El valor no descriu filtratge antispam, quarantena ni un rebot posterior.

Captura errors de manera segura

Durant un diagnòstic breu, un desenvolupador pot registrar només el codi i el missatge del hook wp_mail_failed. No desis totes les dades del correu en producció: podrien incloure destinataris, contingut i adjunts.

add_action('wp_mail_failed', function (WP_Error $error): void {
    error_log(
        'WordPress mail failure: ' .
        sanitize_text_field($error->get_error_code()) . ' | ' .
        sanitize_text_field($error->get_error_message())
    );
});

Col·loca el codi temporal en un mecanisme de desenvolupament apropiat, conserva una reversió i retira’l en acabar. Mantén els registres fora de l’accés públic.

Identifica el transport actiu

Determina si el web utilitza PHP mail, sendmail, un relay de l’allotjament, SMTP o una API transaccional. Revisa el plugin actiu i la configuració real; instal·lar un plugin SMTP no garanteix que controli tots els missatges.

Comprova From, Return-Path i domini d’enviament. Utilitza un remitent autenticat del domini i el visitant a Reply-To.

Amb correu local, consulta la cua i el registre de lliurament de cPanel o Plesk amb accés autoritzat.

Busca el missatge al proveïdor

Localitza la referència a l’activitat SMTP o transaccional. Anota si ha estat acceptat, ajornat, rebotat, rebutjat o suprimit, juntament amb el message ID.

Si no hi apareix, no ha arribat a aquest proveïdor malgrat el resultat de WordPress; inspecciona l’enrutament, les cues locals i quin plugin posseeix l’enviament.

Si s’ha rebutjat, utilitza el codi exacte per reparar credencials, autorització del remitent, límits o destinatari.

Revisa autenticació i rebots

Comprova SPF, DKIM i DMARC per al proveïdor i From reals. El registre A del web no autoritza el correu i els MX normalment controlen l’entrada.

Supervisa el Return-Path autenticat per detectar informes de no lliurament. Alguns arriben quan la petició PHP ja ha acabat i no poden canviar el booleà anterior.

No creïs un segon SPF ni publiquis claus DKIM privades.

Segueix el gateway destinatari

Després de l’acceptació, demana a l’administrador autoritzat que cerqui per message ID, hora, remitent i destinatari. Revisa quarantena, regles, àlies, grups i quota.

Provar només Gmail no és suficient quan el receptor real utilitza Microsoft 365, Google Workspace o un altre gateway corporatiu.

Inspecciona les capçaleres completes d’una còpia lliurada sense publicar adreces personals.

Verifica el lliurament complet

Després de reparar el traspàs identificat, executa l’acció real una vegada amb una referència nova. Confirma el resultat de wp_mail(), l’acceptació local o externa, l’autenticació i l’arribada final.

Prova Reply-To, adjunts i destinataris condicionals. Mantén un registre protegit o alertes del proveïdor proporcionals al volum.

Demana reparació urgent quan discrepin els registres locals i externs, els rebots no siguin clars o els leads siguin crítics. Comparteix hores i codis ocultant dades; mai credencials o cossos.

ABANS D’ENVIAR LA SOL·LICITUD

Preguntes freqüents.

Demaneu contrasenyes al formulari?+

No. El formulari públic no demana mai accessos. Les dades segures es demanen només després d’aprovar l’abast i el pressupost.

Qui revisa la incidència?+

La sol·licitud arriba a Jordi Ensenyat, fundador de Code Barcelona i especialista en WordPress amb més de 15 anys d’experiència.

Es canvia res abans del pressupost?+

No. Primer es revisen els símptomes visibles i es defineix l’abast. La intervenció comença després de l’aprovació i amb una via de recuperació preparada.

Treballeu amb webs en anglès i fora d’Espanya?+

Sí. WP Repair atén incidències de WordPress i WooCommerce en català, castellà i anglès mitjançant un servei remot.

Avaluar la meva incidència