Avec la sortie de WordPress 3.0, la possibilité d’ajouter des « types de publication personnalisés » à vos thèmes WordPress est un outil très précieux que j’ai utilisé dans de nombreux thèmes WordPress que j’ai créés. À l’heure actuelle, les types de publication personnalisés sont devenus extrêmement populaires et utilisés dans presque tous les thèmes WordPress. Mais quiconque a travaillé avec des types de publication personnalisés a probablement rencontré le rérErreur 404 introuvable eadful lorsque vous essayez d’accéder à une publication à partir du type de publication à un moment ou à un autre. Heureusement, il existe presque toujours une solution simple pour corriger ces erreurs.
Ci-dessous, j’ai énuméré certains des problèmes les plus courants que les gens rencontrent avec les types de publication personnalisés et pourquoi ils peuvent recevoir ces erreurs. Espérons qu’ils aideront au moins quelques personnes là-bas.
1. Vérifiez vos paramètres de lien permanent
C’est probablement l’une des raisons les plus courantes pour lesquelles les gens reçoivent des erreurs 404 sur leurs types de publication personnalisés et je l’ai traité plusieurs fois. J’ai vu de nombreux correctifs, tels que le vidage des règles de réécriture (que je ne recommande pas), mais personnellement, j’ai eu la meilleure chance avec le correctif suivant :
Solution:
- Définissez votre structure de permalien personnalisée (telle que %postname%)
- Cliquez sur Enregistrer
- Vérifiez si vos pages de publication personnalisées renvoient 404 pages d’erreur
- S’ils le font, revenez en arrière et remettez les permaliens par défaut et enregistrez
- Essayez maintenant de définir à nouveau le lien permanent personnalisé et enregistrez
Les allers-retours m’ont normalement aidé à corriger mes erreurs et j’ai eu beaucoup de succès avec cette méthode.
Maintenant, sur certains serveurs, si vos autorisations ne sont pas définies correctement, cela peut ne pas fonctionner et vous devrez peut-être mettre à jour votre fichier .htaccess manuellement. Pour ce faire, vous devrez vous connecter à votre site via FTP ou SFTP et naviguer dans votre répertoire racine WordPress (au même endroit où se trouvent votre fichier wp-config.php et votre dossier wp-content). Ici, vous devriez trouver un fichier nommé .htaccess que vous pouvez modifier (si vous ne le voyez pas, assurez-vous que votre programme FTP a la possibilité d’afficher les fichiers cachés activés et s’il n’y en a tout simplement pas, créez-en un). Assurez-vous maintenant que le fichier contient le code WordPress de base comme mentionné dans le Documents WordPress, qui ressemble à ceci :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Important: Si vous modifiez un fichier .htaccess existant, assurez-vous d’abord de sauvegarder le fichier sur votre ordinateur au cas où vous vous tromperiez.
2. Vérifiez les conflits de slug (avoir une page avec le même slug que votre type de publication)
Une autre chose qui peut provoquer une erreur 404 est que vous avez une page principale pour afficher votre type de publication et qu’elle a le même slug que votre slug singulier de type de publication réel. Par exemple, si vous avez un type de publication nommé « portfolio » et que vous avez également une page principale « portefeuille » avec le slug « portfolio » (en d’autres termes, pour accéder à une publication de portefeuille, vous iriez sur site.com/portfolio/sample- post), cela crée un conflit provoquant des erreurs 404 sur vos messages de type post singulier. C’est pourquoi vous constatez souvent que le type de publication de portefeuille utilise le slug « projets » ou « élément de portefeuille » pour le slug singulier.
Solution:
- Vous pouvez modifier le nom de la page pour qu’il soit différent du type de publication personnalisé
- Vous pouvez modifier votre slug de type de publication personnalisé, ce qui se fait en modifiant le paramètre de réécriture lorsque enregistrer votre type de publication personnalisé
3. Règles de réécriture de vidage automatique (pour les développeurs)
Une autre cause d’erreurs 404 est qu’à chaque fois qu’un nouveau type de publication est enregistré, vous devez « vider » vos règles de réécriture dans WordPress. Cela peut être fait en allant dans Paramètres> Permaliens et en cliquant sur le bouton Enregistrer (mentionné dans la première section de cet article).
Si vous travaillez sur un thème ou un plugin personnalisé avec des types de publication enregistrés, vous pouvez envisager de vider automatiquement les règles de réécriture pour votre utilisateur final lorsqu’il active votre thème ou plugin pour éviter toute erreur 404. Vous trouverez ci-dessous un exemple de code que vous pouvez utiliser :
// Code for themes
add_action( 'after_switch_theme', 'flush_rewrite_rules' );
// Code for plugins
register_deactivation_hook( __FILE__, 'flush_rewrite_rules' );
register_activation_hook( __FILE__, 'myplugin_flush_rewrites' );
function myplugin_flush_rewrites() {
// call your CPT registration function here (it should also be hooked into 'init')
myplugin_custom_post_types_registration();
flush_rewrite_rules();
}
Vous avez une autre erreur ou solution ?
Si vous rencontrez une autre erreur ou si vous avez une meilleure solution, la mienne, veuillez commenter ci-dessous et me le faire savoir. Non seulement cela m’aidera, mais cela aidera probablement d’autres personnes à la recherche d’une solution à leur problème. Merci!