Lorsqu'une erreur 404 est rencontrée, un fichier de modèle 404.php peut être utilisé pour afficher un message d'erreur personnalisé. Ceci est documenté dans l' article de la hiérarchie des modèles .
Mon objectif est de créer des pages d'erreur personnalisées pour les erreurs 401, 403 et 500. J'ai essayé de créer des fichiers 401.php, 403.php et 500.php dans le répertoire de mon thème mais cela ne fonctionne pas.
Comment créer des pages d'erreur 401, 403 et 500 personnalisées dans WordPress?
php
htaccess
404-error
template-hierarchy
500-internal-error
Henrywright
la source
la source
Réponses:
Les pages d'erreur sont affichées via .HTACCESS, si vous utilisez Apache, vous utiliserez la
ErrorDocument
directive et y ajouterez le statut et l'URL.Il ressemblerait donc à ceci dans votre fichier .htaccess:
Vous pouvez utiliser la fonction suivante ci-dessous. Cela ajoutera dynamiquement ce qui est nécessaire au fichier HTACCESS pour vous ou vous pouvez le faire manuellement.
1. Ajoutez des pages:
Vous devrez ensuite aller dans votre tableau de bord et créer les pages comme n'importe quelle page normale ('Dashboard'> 'Pages'> 'New'). Ils peuvent être intitulés comme vous le souhaitez, assurez-vous simplement que le slug est le même que dans la fonction ci-dessous (Slug: error-401, error-403, error-404, error-500). Vous pouvez également utiliser le modèle de page pour créer la mise en page et le style que vous souhaitez pour ces pages spécifiques. Suivez les instructions de WordPress Codex pour cela.
2. Ajouter une fonction:
NB !! REMARQUES SUR LA FONCTION CI-DESSUS
Lors du déplacement de votre site Web ou de la modification de la structure des URL
La chose à retenir avec la fonction ci-dessus est bien qu'elle vérifie si les directives ErrorDocument existent déjà avant de les écrire dans votre fichier HTACCESS, elle ne réécrira pas les directives ErrorDocument si vous modifiez ou déplacez votre blog pour refléter les emplacements de page mis à jour. Vous devez d'abord supprimer les directives ErrorDocument existantes dans votre fichier HTACCESS, puis réexécuter cette fonction pour créer les nouvelles directives.
Correct crochet pour déclencher la fonction UNE SEULE FOIS
L'autre chose à noter est cette fonction, l'utilisation de l'
init
action s'exécutera à chaque fois que vos pages se chargent, ce qui est super inutile et inutile donc je suggérerais de l'ajouter à un plugin et d'utiliserregister_activation_hook
plutôt afin qu'il ne se déclenche qu'une seule fois lors de l'activation du pluginAutorisations de fichier
Il est également impératif que votre .htaccess soit accessible en écriture lorsque vous utilisez la fonction ci-dessus, assurez-vous donc qu'il dispose des autorisations de fichier correctes, quelque chose comme CHMOD777.
la source