
🔗 Comment réinitialiser les permaliens WordPress : 3 façons de corriger une erreur 404
Vous connaissez cette situation: vous ouvrez un site web et vous voyez une page blanche avec le redouté 404. La page d’accueil se charge correctement, le panneau d’administration fonctionne, mais l’article ou la page elle-même ne s’affiche pas. Vous vérifiez l’URL, vous réenregistrez le contenu, vous videz le cache du plugin, rien n’y fait.
Neuf fois sur dix, la cause racine est un dysfonctionnement des règles de réécriture de WordPress. Les permaliens ne se résolvent plus et le CMS n’arrive pas à déterminer quel contenu afficher à cette adresse. Bonne nouvelle: cela se corrige en une minute, sans plugin ni modification de code.
Voici trois méthodes pour réinitialiser les permaliens: de la plus simple (quelques clics dans le panneau d’administration) à l’intervention manuelle dans la base de données via phpMyAdmin. Après la réinitialisation, l’erreur 404 disparaît et la structure d’URL reste intacte.
💡 Aperçu rapide:
- Allez dans le panneau d’administration WordPress et cliquez sur «Enregistrer les modifications» sur la page des permaliens.
- Ajoutez une ligne de code dans le fichier functions.php de votre thème, actualisez le site et supprimez la ligne.
- Videz le champ rewrite_rules dans la table wp_options via phpMyAdmin.
- Vérifiez le résultat: ouvrez la page problématique et confirmez que l’erreur 404 a disparu.
À quoi servent les permaliens et pourquoi vous devez les réinitialiser
Les permaliens sont des URL lisibles par un humain pour les pages et articles WordPress. Au lieu de ?p=123, vous voyez /blog/how-to-reset-permalinks/. La transformation est assurée par le mécanisme des règles de réécriture, un ensemble de règles que le CMS stocke dans la base de données et (selon certains réglages) dans le fichier .htaccess.
Lors de l’ajout d’un nouveau type de publication, d’un changement de structure de liens ou après une migration de site, il arrive que les règles de réécriture ne se mettent pas à jour automatiquement. WordPress continue d’utiliser les anciennes règles en cache, et une page qui existe physiquement renvoie une erreur 404. Une purge force la reconstruction complète des règles de réécriture: elle supprime les règles stockées et génère les règles actuelles.
Il ne s’agit pas de «supprimer» les permaliens; la structure d’URL définie dans les réglages reste inchangée. Seul le cache des règles de routage interne est modifié. L’opération est totalement sûre: les thèmes, les plugins et le contenu ne sont pas affectés.
Méthode 1. Via le tableau de bord WordPress
La méthode la plus rapide et la plus sûre consiste à réinitialiser via le panneau d’administration. Utilisez-la lorsque le tableau de bord est accessible.
- Connectez-vous à la console WordPress:
your-site.com/wp-admin. - Allez dans Réglages → Permaliens.
- Ne modifiez rien dans les paramètres, descendez simplement en bas de la page.
- Cliquez sur le bouton bleu «Enregistrer les modifications».

WordPress va silencieusement reconstruire les règles de réécriture et mettre à jour le fichier .htaccess (s’il est utilisé). Aucune notification de succès n’apparaîtra; ouvrez simplement la page problématique dans un nouvel onglet du navigateur et vérifiez si l’erreur a disparu.
Pourquoi cela fonctionne-t-il? Lorsque vous cliquez sur «Enregistrer les modifications», le CMS appelle la fonction interne flush_rewrite_rules(), la même que celle utilisée par les développeurs dans le code. La seule différence est la manière de la déclencher: ici vous cliquez avec la souris au lieu d’écrire du PHP.
Cette méthode résout le problème dans la grande majorité des cas. Si elle n’a pas fonctionné, passez à la méthode 2.
Méthode 2. Via le fichier functions.php du thème
Si le panneau d’administration ne se charge pas ou si le bouton «Enregistrer» n’a produit aucun résultat, réinitialisez les règles de manière programmatique. Vous aurez besoin d’un accès aux fichiers du site: via FTP, le gestionnaire de fichiers de l’hébergement ou l’éditeur de thème intégré.
Important: flush_rewrite_rules() est une opération coûteuse. Elle reconstruit toute la structure d’URL et ralentit sensiblement le site si elle est appelée à chaque requête. C’est pourquoi nous allons ajouter la fonction une seule fois, actualiser le site et supprimer immédiatement la ligne.
- Ouvrez le fichier
functions.phpdu thème actif. Chemin:/wp-content/themes/your-theme/functions.php. - Tout à la fin du fichier, avant la balise fermante
?>(si elle est présente), ajoutez une ligne:
1 flush_rewrite_rules();
- Enregistrez le fichier.
- Actualisez n’importe quelle page du site dans le navigateur; la fonction s’exécutera à la première requête.
- Ouvrez à nouveau
functions.phpet supprimez la ligne que vous avez ajoutée. Cette étape est obligatoire.

La fonction s’est exécutée une fois, les règles ont été reconstruites, le code a été retiré et le site fonctionne normalement sans charge supplémentaire. Les développeurs de plugins utilisent la même approche: flush_rewrite_rules() est accrochée au hook d’activation, pas à chaque requête.
Une alternative pour ceux qui préfèrent ne pas toucher directement à functions.php: le plugin Code Snippets. Créez un nouvel extrait avec le même code, exécutez-le une fois (le bouton «Exécuter») et supprimez-le. Le résultat est identique.
Méthode 3. Via phpMyAdmin, réinitialisation directe des règles dans la base de données
Le niveau le plus profond consiste à vider manuellement les règles de réécriture directement dans la table wp_options. Utilisez cette méthode lorsque vous n’avez accès ni au panneau d’administration ni aux fichiers du thème (par exemple, un écran blanc de la mort sur tout le site, sauf pour la base de données).
Assurez-vous de sauvegarder la base de données avant toute modification dans phpMyAdmin. Une seule action erronée dans l’éditeur SQL peut endommager le site de manière irréversible.
- Ouvrez phpMyAdmin via votre panneau d’hébergement (cPanel, ISPmanager, DirectAdmin) dans la section «Bases de données».
- Dans la colonne de gauche, sélectionnez la base de données de votre site WordPress.
- Allez dans l’onglet SQL du menu supérieur.
- Collez la requête dans le champ de texte et cliquez sur «Exécuter»:
1 SELECT * FROM wp_options WHERE option_name = 'rewrite_rules'
- Les résultats afficheront une seule ligne. Cliquez sur «Modifier» (l’icône en forme de crayon) à côté.
- Repérez le champ
option_valuecontenant un long texte avec des données sérialisées. Sélectionnez tout le contenu du champ, supprimez-le, puis enregistrez.

Au prochain chargement de page, WordPress détectera la valeur vide de rewrite_rules, constatera qu’il n’y a pas de règles et les régénérera automatiquement. Vous n’avez rien d’autre à exécuter.
Remarque: dans certaines configurations d’hébergement, le préfixe de table peut être différent de wp_. Si votre préfixe est différent (par exemple, wpxy_), remplacez wp_options par wpxy_options. Vous pouvez vérifier le préfixe dans le fichier wp-config.php, à la ligne $table_prefix.
Vidéo: réinitialiser les permaliens en pratique
Si vous préférez regarder plutôt que lire, cette vidéo montre l’ensemble du processus de réinitialisation des permaliens avec la première méthode, de la connexion au panneau d’administration à la vérification du résultat:
⁉️🤔 Foire aux questions
Mes URL vont-elles disparaître après la réinitialisation des permaliens?
Non. Une purge ne modifie pas la structure de liens définie dans «Réglages → Permaliens». Elle reconstruit uniquement le cache des règles de routage interne. Toutes vos adresses comme
/blog/,/product/et/category/resteront exactement les mêmes. L’exception est si vous avez modifié manuellement la structure dans les réglages avant d’enregistrer; dans ce cas, les URL seront reconstruites selon le nouveau modèle.
Dois-je installer un plugin pour réinitialiser les permaliens?
Pour une opération ponctuelle, certainement pas. Les trois méthodes ci-dessus couvrent tous les scénarios sans logiciel supplémentaire. Des plugins comme Rewrite Rules Inspector n’ont de sens que si vous enregistrez régulièrement des types de publication et des taxonomies personnalisés dans le code et souhaitez voir l’état des règles en temps réel. Pour une simple correction d’erreur 404, c’est disproportionné.
La réinitialisation via le panneau d’administration n’a pas fonctionné. Que faire ensuite?
Vérifiez si le fichier
.htaccessn’est pas écrasé par un autre plugin (cache, sécurité, SEO). Désactivez temporairement les plugins suspects et répétez la réinitialisation. Si cela ne résout pas le problème, passez à la méthode 2 (PHP); elle appelle de manière garantie la même fonctionflush_rewrite_rules()en contournant tous les filtres d’administration.
Puis-je réinitialiser les règles via WP-CLI?
Oui, si WP-CLI est installé sur le serveur, la commande
wp rewrite flushfait exactement la même chose depuis la ligne de commande. C’est la méthode la plus rapide pour les développeurs travaillant en SSH. Elle s’exécute instantanément, ne nécessite pas d’ouvrir un navigateur et ne laisse aucune trace dans le code du thème.
Que dois-je faire si l’erreur 404 persiste après la réinitialisation?
La cause n’est pas liée aux permaliens. Vérifiez trois choses: (1) si la page ou l’article lui-même n’a pas été physiquement supprimé, (2) si le slug n’entre pas en conflit avec un autre contenu ou une taxonomie, (3) si les requêtes ne sont pas bloquées par un fichier
.htaccesscontenant des règles de redirection incorrectes. Dans ce dernier cas, renommez temporairement.htaccessen.htaccess.bak, enregistrez les permaliens via le panneau d’administration (WordPress créera un nouveau.htaccess) et vérifiez à nouveau.
Vous avez réinitialisé les liens, quelle est la suite?
Vous avez effectué la réinitialisation avec l’une des trois méthodes et la page s’est ouverte. Parfait. Mais si une erreur 404 est apparue une fois, elle peut revenir: après une mise à jour de plugin, un changement de thème ou des modifications de types de publication personnalisés. Mettez ce guide en favori; vous connaissez désormais la première méthode (le bouton «Enregistrer» dans le panneau d’administration) par cœur et pouvez l’exécuter en dix secondes.
Et la règle principale lorsque vous travaillez avec la base de données: avant toute intervention, faites une sauvegarde. phpMyAdmin ne pardonne pas les erreurs, mais une sauvegarde de la base de données permet de remettre le site en état de marche en quelques minutes.



