Gestion Erreur 404
SapinTremblant
Member
dans Entraide
Bonjour,
dans le cas d'un ancien site sans pluxml que l'on passerai sus Pluxml, comment faire pour gérer les erreurs 404 directement depuis l'admin afin que le message 404 soit intégré dans le template.php ? Je pense qu'un plugin serait interessant à ce niveau.
Dans l'idée je crois que si .htaccess redirige vers ./index.php?erreur404 alors le plugin prend le relais et affiche un message avertissant que la page demandée n'existe plus etc...
cela vous parrait-il gérable ?
dans le cas d'un ancien site sans pluxml que l'on passerai sus Pluxml, comment faire pour gérer les erreurs 404 directement depuis l'admin afin que le message 404 soit intégré dans le template.php ? Je pense qu'un plugin serait interessant à ce niveau.
Dans l'idée je crois que si .htaccess redirige vers ./index.php?erreur404 alors le plugin prend le relais et affiche un message avertissant que la page demandée n'existe plus etc...
cela vous parrait-il gérable ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
On peut deja rapidement et en partie, gerer , disons , une page d'erreur interne a pluxml .O pourrait intervenir a differents niveau mais j'ai choisi pour l'exemple l'endroit ou le script nous renvoi en premier un message d'erreur .
En effet , on a le droit a un message d'erreur sur un foreach , lorsque pluxml ne contient aucun article , que l'on pointe vers une url de catégorie qui n'existe pas (ou qui est vide) ou un article qui n'existe pas .
Pour ce faire on peut rapidement mettre en place un test , verifiant que la requete (par l'url) nous renvois bien vers une page qui peut extraire des données a partir d'au moins un fichier physiquement présent .
Dans le fichier 'class.pluxml.php' nous avons cette fonction : Cette fonction n'a aucune alternative a proposé en l'absence de fichiers a parser.
un petit test permet alors de lui renvoyé le nom d'un fichier qui sera le seul et unique a parser .
Modification de cette fonction : Pour le coté 'edition' , on pourra par exemple editer en mode brouillons un article , puis par le ftp , renommer ce fichier en erreurs.xml . ou faire une copie modifier de la page d'edition d'article de façon a ce qu'elle ne charge que ce fichier .
GC
<edit>Ensuite pour le coté htaccess , il suffit de renvoyé sur une page ou une categorie inexistante dans votre pluxml .
Attention , la gestion de ces erreurs n'est pas aussi claire qu'il se le pourrait , pluxml gere en partie ces erreurs en renvoyant sur la page d'acceuil ou la categorie la plus proche , une url mal ecrite ou legerement déformé ne souleve pas forcement une erreur .
au départ j'avais tout simplement eviter l'apparition de c emessage d'erreur sans page alternative , finalement j'ai repris l'idée exposée plus haut et ajouté un fichier htaccess (ce fichier est généré a l'install , car en testant sur free je n'ai pas reussi a intégré/activé le php dans ce dernier fichier , du coup il est generé en pure texte a l'install .
Dans ce test , donc , un htaccess est créer a la racine de cette version modifié de pluxml , un fichier erreurs.xml est aussi généré en même temps que les premiers articles . Ce fichier erreurs.xml est editable dans l'admin .
l'archive de ce mod modifié : http://yidille.free.fr/plux-mod-gc-jui-2008/plux-mod-gc-jui-err-2008.zip
test sur page d'erreur :
1) 1 categorie qui n'existe pas ou plus : http://yidille.free.fr/plux-mod-gc-jui-2008/?031/
2) 1 article qui n'existe pas ou plus : http://yidille.free.fr/plux-mod-gc-jui-2008/?11-or
3) 1 page qui n'existe pas dans le repertoire de ce pluxml modifié : http://yidille.free.fr/plux-mod-gc-jui-2008/page_truc_muche_ki_existe_pas.plouf
Dans la majeure partie des cas , pluxml renvoie sur la page d'acceuil quand il y a une erreur dans l'url , sauf cas particuliers .
La soluce de proposé une page d'erreur est une solution , l'autre serait de reprendre les regex de façon plus strict (je ne sais pas franchement faire )
Me semble que la soluce page d'erreur + htaccess n'est pas mal
@marama et @stef , je ne sais pas ce que vous en penser , mais comme on peut mettre ça en place a l'install , cela me parait léger , reste si un mode 'erreur' a l'instar du mode 'brouillons' est preferable coté admin . j'ai opté pour une page supplementaire dédié a ça dans cette version de test .
En effet, désormais le template se divise en plusieurs fichiers (selon le mode) avec notamment, vu qu'il y a un mode erreur, un fichier erreur.php
cordialement
Voyez-vous un problème auquel je n'aurai pas pensé qui va poser des problèmes dans l'avenir ? Précisions : le site n'est pas un blog, donc pas de nouveaux articles, ni catégories à ajouter. (http://www.xtremeglisses-samoens.com)
okay , si pas de nouvel categorie ou articles , a premiere vue , tout va bien
Cependant tu as omis les erreurs 'internes de pluxml :
test : http://www.xtremeglisses-samoens.com/?022/ pour une cat qui n'existe pas ou une adresse vers un article fantome : http://www.xtremeglisses-samoens.com/?022-
alors que : http://www.xtremeglisses-samoens.com/index.php?contacter ou http://www.xtremeglisses-samoens.com/?01- te renverrons sur la page d'accueil une autre url bien formé (comme pluxml les attend) mais qui ne pointe sur aucun vrai n° d'article ou de cat , te laisse page blanche . sauf si cette article existe : ta page erreur en mode article est par exemple atteignable comme ceci : http://www.xtremeglisses-samoens.com/index.php?09-
(ton post precedent precise : 0009.009.erreur404.xml , categorie n°9 et article n° 9 )
Voilou , si ça t'aide a comprendre comment pluxml fonctionne au niveau des url
++
<edit> remarques que en servant ta page d'erreur en 'mode article' , le titre de la page devient : erreur 404 - Xtreme Glisses et pas seulement Xtreme Glisses </>