Depuis la version 6.7, WordPress signale quand une extension ou un thème réclame ses traductions trop tôt, avant que WordPress ait fini de se mettre en place et sache dans quelle langue afficher le site. Le nom placé après « for the » (ou « pour le domaine ») désigne l’extension ou le thème en cause. C’est un avis (Notice) : le site fonctionne, et le message n’apparaît que si le mode débogage est actif.
Pourquoi cette erreur apparaît
- Une extension ou un thème utilise une fonction de traduction (__(), _e(), esc_html__()…) dès son chargement, par exemple pour préparer ses réglages, au lieu d’attendre l’action init.
- L’extension n’a pas encore été adaptée à ce contrôle de WordPress 6.7, ou votre version est antérieure à sa correction.
- Le débogage de WordPress (WP_DEBUG) est actif avec affichage à l’écran : sans cela, l’avis reste invisible.
- Un code personnalisé, dans functions.php ou une extension maison, appelle load_plugin_textdomain() ou une traduction en dehors de tout crochet.
Comment corriger le problème
Trouver l’extension derrière le nom de domaine
Le domaine est un identifiant court : woocommerce pour WooCommerce, wordpress-seo pour Yoast SEO, astra pour le thème Astra. Il correspond presque toujours au nom d’un dossier dans wp-content/plugins ou wp-content/themes. Le fichier wp-includes/functions.php qui termine le message n’est pas en cause : c’est seulement là que WordPress émet l’avis.
Mettre à jour l’extension ou le thème
La plupart des éditeurs ont corrigé ce point. Mettez à jour l’élément concerné ainsi que WordPress, puis rechargez la page. Si l’avis persiste avec la dernière version, signalez-le à l’éditeur en recopiant le message complet.
Retirer l’avis de l’écran, pas du journal
Affichés en haut des pages, ces messages peuvent aussi perturber l’administration, par exemple en provoquant l’erreur « headers already sent ». Dans wp-config.php, adaptez les lignes de débogage existantes : plus rien ne s’affiche, et les avis restent notés dans wp-content/debug.log jusqu’à la correction. Une fois l’extension corrigée, repassez WP_DEBUG à false : ce fichier est consultable depuis le web sur bien des hébergements, il ne doit pas grossir indéfiniment.
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', false );
define( 'WP_DEBUG_LOG', true );
Charger les traductions au bon moment
Dans votre propre code, ne traduisez rien au moment où le fichier est lu : placez ces appels dans une fonction accrochée à init, ou plus tard. Les extensions hébergées sur WordPress.org n’ont d’ailleurs plus besoin d’appeler load_plugin_textdomain() : WordPress charge leurs traductions de lui-même.
add_action( 'init', function () {
register_post_type( 'projet', array(
'label' => __( 'Projets', 'mon-extension' ),
'public' => true,
) );
} );
Gardez une copie de wp-config.php avant d’y toucher, et ne modifiez jamais wp-includes/functions.php pour faire disparaître l’avis : la prochaine mise à jour de WordPress effacerait ce changement.
Un autre message d'erreur ? Collez-le dans le décodeur : il le reconnaît et vous oriente vers la bonne fiche.
Ouvrir le décodeur