Alo easymail newsletter non invia le mail a tutti gli utenti.
Alo easymail newsletter, da quanto dice il nome, è un plugin per la gestione di newsletter gratuito per un utilizzo professionale delle campagne di marketing.
Un problema che abbiamo riscontrato è che l’invio delle mail potrebbe interrompersi di punto in bianco e rimanere per giorni appeso senza mai arrivare al completamento dell’operazione.
Questo è dovuto, nel nostro caso, ad alcuni indirizzi email inseriti non correttamente cioè con spazi all’inizio o alla fine. Questi indirizzi email non validi creavano una sorta di loop infinito dato che l’indirizzo email a cui inviare la mail non passava la validazione.
Spieghiamo come funziona l’invio delle mail:
- Il cron che gestisce l’invio viene avviato ogni 10min (valore di default che è possibile modificare).
- Ad ogni avvio della procedura una query preleva gli indirizzi a cui mandare la newsletter.,
- Viene verificata la validità dell’indirizzo
- Viene inviata la mail
Il problema sorge quando l’indirizzo email non viene validato quindi la mail non viene inviata ma lo stato di quell’invio non viene aggiornato. Al successivo avvio del cron, la query che preleva gli indirizzi prenderà nuovamente quello errato che precedentemente non aveva passato la validazione e nuovamente non la passerà. In questo modo non vedremo mai l’invio della newsletter completo al 100%.
Il file che provvede al controllo della mail è alo-easymail_functions.php all riga #1642 dove troveremo questo codice:
if ( !is_email( $recipient->email ) ) return;
Questo controllo non fa altro che uscire dall’esecuzione in caso di email non corretta.
La nostra idea è di modificarlo con un controllo differente:
if ( !is_email( $recipient->email ) ){
$wpdb->update( "{$wpdb->prefix}easymail_recipients",
array ( 'result' => -2 ),
array ( 'ID' => $recipient->ID )
);return;
}
In questo modo la mail non corretta non verrà più ripescata e sapremo anche che è un indirizzo non corretto.
L’unico problema è che aggiornando noi il file, in un futuro aggiornamento del plugin, perderemo il lavoro fatto.
Abbiamo inviato una segnalazione all’autore per chiedere se è possibile integrare questo controllo aggiuntivo nativamente.
Ciao.
Da ieri non arrivano le mail che invio con aloeasymail sui miei siti wordpress. Da ieri ho installato un aggiornamento di wordpress.
Qualcuno mi può aiutare?
Buongiorno Ale,
il piacere è nostro. Internet secondo noi è anche questo…condivisione :-). Grazie per la nuova versione ma anche per il plugin che è a dir poco favoloso
ciao, grazie per il bugfix!
ho appena caricato su wordpress.org la nuova versione 2.4.6 che include il vostro codice: http://wordpress.org/extend/plugins/alo-easymail/
grazie ancora per il prezioso contributo