Jump to content

Problème avec SEO sur PS 1.5.3


Recommended Posts

Bonjour,

 

N'obtenant pas de réponses sur la partie anglophone du forum, je tente ma chance sur la partie francophone.

 

J'ai installé PS 1.5.3 et voulu configurer la partie SEO. Voulant supprimer le '.html' des URLs de produits, j'ai changé le schéma de ces urls via le backoffice. Cela n'a pas fonctionné. Après investigation, il s'avère que le pb (d'après moi) provient du Dispatcher.php et plus précisément de la fonction "loadRoutes". Celle-ci charge les default routes après les customs et donc surécrit les customs.

 

En regardant l'historique de modification, on se rend compte que cette partie a été modifié pour la 1.5.3. J'ai replacé le code pour charger les default routes là où il était (càd au tout début du code) et cela fonctionne pour les pages produits / catégories mais pas pour les pages telles que contact / commande / mon compte. Là je reçois un 404.

 

Je ne comprends pas pourquoi. J'ai ouvert un bug sur github (https://github.com/PrestaShop/PrestaShop/issues/181). Aucune réaction à ce jour (bon cela fait que 2 jours). Donc si qqqn avait une idée lumineuse, j'en serais plus que ravie :D

Link to comment
Share on other sites

si je mets la code suivant en commentaire, j'accède ces pages sans difficulté:

 

foreach (Language::getLanguages() as $lang)
   foreach ($this->default_routes as $id => $route)
 $this->addRoute(
  $id,
  $route['rule'],
  $route['controller'],
  $lang['id_lang'],
  $route['keywords'],
  isset($route['params']) ? $route['params'] : array()
 );

 

Cela marche si je désactive "la redirection automatique vers l'url canonique".

 

Mon souci est de savoir la conséquence de la mise en commentaire de ce code ....

Link to comment
Share on other sites

  • 1 month later...

Salut, je viens de découvrir le problème,

chez moi aussi ça déconne pas mal le dispatcher, j'essaye de changer la regles de base du rewrite des pages cms et il n'est pas pris en compte je ne sais pourquoi.

J'ai regardé le ticket que tu as ouvert et apparemment celui l'est toujours....

 

 

Je viens de récupérer le commit que tu as fais et dans mon cas cela semble résoudre le soucis. Je te remercie.

Link to comment
Share on other sites

  • 2 months later...

Non vous n'y êtes pas, ce n'est pas un bug, c'est le fonctionnement logique.

 

L'URL rewriting a besoin d'un paramètre identifiable pour savoir de quelle page (fichier php/tpl) on parle en analysant l'URL rewritée.

 

Pour les fiches produits, on repère le ".html"

Pour les catégories, on repère le vide ""

Pour les fabricants, on repère le "_"

Pour les fournisseurs, on repère le double "__"

 

Bref vu que tu as supprimé le ".html", la règle pour tes produits devient la même que pour les catégories donc ton Presta s'emmêle les pinceaux ce qui est tout a fait normal.

 

Quand on ne connait pas vaut mieux pas s'amuser dans le BO de Presta, certaines fois ça ne pardonne pas ;)

Link to comment
Share on other sites

@Gostbuster : Les règles de rewriting ne se changent pas dans le Dispatcher.php, les "loadroutes" sont les routes par défaut, celles qui sont chargées lors de l'install de Presta.

 

Pour les modifier c'est Admin > Seo & URLs et tu as tes règles de réécritures.

Tu fais ce que tu veux avec mais ne supprime pas le .html sans y mettre un autre paramètre unique ;)

 

Ensuite ces règles sont enregistrées en BDD et remplacent celles par défaut.

 

Moi je cherche à ajouter une règle du type fiche produit ou catégorie et à l'intégrer dans mon nouveau fichier controller, le dispatcher et le /classes/controller/FrontController dans la fonction canonicalRedirection(), si quelqu'un passe par là qu'il m'envoie un MP

 

J'y suis presque arrivé mis à part le message "Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas." :lol:

Edited by lambi521 (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...