La sécurité et la maintenance d’un site web prennent du temps. Pourtant, automatiser les mises à jour WordPress est l’un des meilleurs moyens de protéger votre projet contre les failles de sécurité, sans avoir à intervenir manuellement de façon récurrente.
Si le CMS propose une interface graphique pour gérer ces éléments, il est souvent préférable de les configurer directement via le code (en PHP). Cela garantit une configuration robuste, centralisée et facilement déployable sur différents environnements.
Pourquoi automatiser les mises à jour WordPress ?
La gestion des mises à jour est une tâche essentielle pour tout développeur ou administrateur de site. Automatiser les mises à jour WordPress permet de combler rapidement les vulnérabilités de sécurité dès qu’un correctif est publié. En effet, la majorité des piratages exploitent des failles connues sur des versions obsolètes.
WordPress distingue deux types de mises à jour pour son cœur (Core) :
- Les versions mineures : (ex: 6.4.1 vers 6.4.2) Elles corrigent des bugs et des failles de sécurité. Elles sont activées par défaut.
- Les versions majeures : (ex: 6.3 vers 6.4) Elles apportent de nouvelles fonctionnalités et modifient parfois le comportement du CMS.
Bien que l’interface d’administration permette de gérer ces paramètres, utiliser le code PHP (via wp-config.php et des filtres) assure que votre configuration ne sera pas modifiée par erreur par un autre administrateur.
Étape 1 : Préparer le terrain (Prérequis)
Avant d’activer l’automatisation, il est crucial de s’assurer que votre environnement est prêt à absorber ces changements sans casser votre site.
- Sauvegardes automatiques : Assurez-vous d’avoir un système de sauvegarde (fichiers et base de données) qui tourne régulièrement.
- Thème enfant : Si vous modifiez un thème, utilisez toujours un thème enfant pour ne pas perdre vos modifications lors de la mise à jour du thème parent.
- Accès FTP ou gestionnaire de fichiers : Vous aurez besoin d’accéder aux fichiers
wp-config.phpet au dossierwp-content/mu-plugins/de votre installation.
Étape 2 : Configurer le cœur avec wp-config.php
Le fichier wp-config.php est le centre de contrôle de votre site. C’est ici que nous allons définir le comportement des mises à jour du cœur (le Core de WordPress).
Autoriser uniquement les mises à jour mineures (Recommandé)
Pour des raisons de stabilité, il est souvent préférable de n’automatiser que les correctifs de sécurité (versions mineures). Ouvrez votre fichier wp-config.php ( avec votre IDE ou le notepad ) et ajoutez cette ligne juste avant le commentaire /* C’est tout, ne touchez pas à ce qui suit ! */ :
define( 'WP_AUTO_UPDATE_CORE', 'minor' );Ce réglage garantit que votre site restera sécurisé sans risquer les incompatibilités parfois causées par une version majeure.
Activer toutes les mises à jour du cœur
Si vous préférez que WordPress se mette à jour systématiquement, même pour les versions majeures, utilisez la valeur true :
define( 'WP_AUTO_UPDATE_CORE', true );Désactiver totalement les mises à jour du cœur
Dans certains cas spécifiques (comme un site très complexe sans environnement de test), vous pourriez vouloir tout bloquer. Utilisez alors false :
define( 'WP_AUTO_UPDATE_CORE', false );Étape 3 : Automatiser les extensions et thèmes en PHP
Pour automatiser la mise à jour des extensions (plugins) et des thèmes, nous n’allons pas utiliser wp-config.php, mais des filtres PHP. La meilleure pratique consiste à placer ce code dans un mu-plugin (Must-Use Plugin), car il sera exécuté avant les autres extensions et ne dépendra pas du thème actif.
Créer un mu-plugin
Rendez-vous dans le dossier wp-content/ de votre installation. Si le dossier mu-plugins/ n’existe pas, créez-le. À l’intérieur, créez un fichier nommé mises-a-jour-auto.php.
Ajouter les filtres PHP
Ouvrez ce fichier et insérez le code suivant pour activer l’automatisation des extensions et des thèmes :
<?php
/*
Plugin Name: Automatisation des mises à jour
Description: Force la mise à jour automatique des thèmes et extensions.
Author: Votre Nom
Version: 1.0
*/
// Empêcher l'accès direct au fichier
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// Activer les mises à jour automatiques pour toutes les extensions
add_filter( 'auto_update_plugin', '__return_true' );
// Activer les mises à jour automatiques pour tous les thèmes
add_filter( 'auto_update_theme', '__return_true' );
En utilisant la fonction native __return_true de WordPress, nous indiquons au système d’autoriser systématiquement ces mises à jour. Si vous souhaitez un jour les désactiver, il suffira de remplacer __return_true par __return_false.
Étape 4 : Gérer les notifications par e-mail
Par défaut, WordPress envoie un e-mail à l’administrateur à chaque fois qu’une mise à jour automatique est effectuée. Si vous gérez plusieurs sites, cela peut vite devenir du spam.
Vous pouvez désactiver ces notifications en ajoutant un filtre supplémentaire dans votre fichier mises-a-jour-auto.php :
// Désactiver les e-mails de notification de mise à jour du cœur
add_filter( 'auto_core_update_send_email', '__return_false' );
// Désactiver les e-mails de notification de mise à jour des extensions et thèmes
add_filter( 'auto_plugin_theme_update_email', '__return_false' );
Attention : désactiver ces alertes signifie que vous devez vérifier régulièrement le bon fonctionnement de votre site par vous-même.
Vérification et bonnes pratiques
Une fois ces modifications en place, WordPress gérera ses mises à jour de manière autonome lors de ses tâches planifiées (WP-Cron).
Comment vérifier que cela fonctionne ?
Rendez-vous dans l’administration de WordPress, sous Tableau de bord > Mises à jour. Vous devriez voir un message indiquant que « Ce site est maintenu à jour automatiquement avec chaque nouvelle version de WordPress. » Pour les extensions, la colonne « Mises à jour automatiques » affichera qu’elles sont gérées par l’administrateur.
Erreurs fréquentes à éviter
- Oublier les sauvegardes : Une mise à jour automatique peut casser un site si une extension est incompatible. Une sauvegarde quotidienne est indispensable.
- Modifier le functions.php du thème parent : Ne placez jamais vos filtres de mise à jour dans le fichier
functions.phpd’un thème que vous n’avez pas créé, car il sera écrasé lors de sa propre mise à jour. C’est pourquoi l’utilisation d’un mu-plugin est fortement recommandée. - Bloquer le WP-Cron : Les mises à jour automatiques dépendent du système de tâches planifiées de WordPress. Si vous avez désactivé le cron natif (
DISABLE_WP_CRON), assurez-vous de l’avoir remplacé par une tâche cron serveur (crontab).





