Un blog propulsé par WordPress
©Michel Bobillier aka Athos99, tous droits réservés 2007. Toutes les photos de ce site sont protégées par copyright, si vous désirez une de mes photos, contactez-moi
thos99, le blog photo artistique et d’information sur Genève


Le problème

Depuis le passage à la version de Wordpress 2.3, je ne reçois plus de message de notification m’indiquant qu’un utilisateur a écrit un commentaire sur mon blog. J’avais remarqué ce problème mais je pensais avoir une option mal configurée dans mon blog.

J’ai fait quelques recherches sur le net et j’ai vu que je n’étais pas le seul à avoir le problème. Mais personne n’avait de solutions à proposer, à part quelques obscurs conseils de modifier le code PHP de WordPress qui tiennent plus du bricolage.

L’analyse

J’ai analysé le code de WordPress et j’ai remarqué que depuis la version 2.3, une nouvelle libraire pour l’envoi de message est utilisée. Cette nouvelle libraire se présente sous une forme de classe PHP et se dénomme PHPMailer ; elle est aussi utilisée dans d’autres applications PHP.

La différence par rapport à d’autres versions antérieures de WordPress est l’utilisation légèrement différente de la fonction PHP mail. Elle utilise le paramètre optionnel sendmail_path en donnant comme valeur ‘-oi -f wordpress@nom_du_domaine.com’

Sur mon blog hébergé par le provider , infomaniak.ch, l’emploi de ce paramètre optionnel bloque l’envoi de message, probablement pour des questions de sécurité. De plus, je trouve aberrant que WordPress utilise comme adresse d’émail expéditeur : WordPress@nom_du_domaine.com et qu’il ne soit pas possible de la configurer.

La solution

Elle existe et se présente sous une forme d’un plugin que je viens de développer. Ce plugin évite de patcher le code PHP de Worpress et devrait fonctionner aux futurs changement de version. De plus, il permet de configurer l’adresse et le nom de l’émetteur du message.

Ce plugin se trouve dans l’article : Un plugin WordPress pour configurer les mails de notification.