Plusieurs mois déjà que je cherche une piste sur un problème esperluette (&) sur les URL de Joomla :
Constat :
Le site fonctionne correctement, sans signe apparent d'erreur (FF3.5.5, IE7 et les autres certainement) j'aurais pu m'arrêter là mais comme je suis curieux et que j'aime bien les choses "clean", je test le site sur validator.w3.org pour vérifier la validité du site selon le W3C. Là c'est le début de mes ennuis, une dizaine d'erreur sur la page d'accueil, 36 erreurs sur l'une des pages de second niveau contenant des liens, des menus et des formulaires, des "post", etc...
Je corrige quelques erreurs évidentes pour arriver à 3 / 33 erreurs (accueil / page 2) et je constate en page d'accueil une redondance des erreurs sur une même ligne de code, une URL générée, que j'ai provoqué dans l'un de mes menus liens externes, ce menu pointe sur un formulaire ArtForms de mon site, (c'est la seule solution que j'ai trouvé car ArtForms ne laisse que la possibilité d'un menu sur la liste de tous les formulaire) donc je pense à un problème de ce composant (sur les forums d'autres analysent le problème comme cela sans trouver de solution) Le caractère "&" semble être à l'origine, je teste plusieurs "solutions", plusieurs "corrections" de code, rien n'y fait ! Je regarde de plus près les 33 erreurs de la seconde page, je retrouve les 3 erreurs précédentes (c'est normal les liens suivent le template) mais constate des erreurs du même styles sur les icônes PDF (pas présent sur la page d'accueil)
J'en déduis que le problème doit être propre à Joomla qui génère des caractères indigestes dans les URL ; je trouve enfin un site abordant une solution, php.developpez.com sur un problème de "PHPSESSID"
La solution :
Récupérer ce fichier de votre site via FTP :
/www/templates/votretemplate/index.php
Conserver une copie de sauvegarde, et modifier en un exemplaire en y ajoutant ce code, dans une balise php en début de document, avant le doctype par exemple :
ini_set('arg_separator.output', '&');
Recharger votre fichier sur votre site (ftp) puis re-vérifier votre site sur validator.w3.org pour moi c'était ok
This document was successfully checked as XHTML 1.0 Transitional! Congratulations
En espérant que cela fonctionne aussi de votre coté.
| < Précédent | Suivant > |
|---|



