Réécriture d’URL sous Prestashop et performances
Aujourd’hui, c’est le début des soldes, notamment en ligne, et qui dit solde dit gros trafic ! Vos serveurs sont déjà passés au bord de la mort pendant les fêtes, et bien heureusement malheureusement ce n’est pas terminé !
Comme on est sympa chez 202, nous vous proposons aujourd’hui une technique pour améliorer drastiquement vos performances, si vous modifiez le schéma d’URL de Prestashop !
Pourquoi réécrire les URL de Prestashop ?
Prestashop est relativement bien conçu pour le référencement (en tout cas, mieux que d’autres semble-t-il !), mais il y a tout de même plusieurs points qui nécessitent des améliorations, on attend d’ailleurs beaucoup de Prestashop 1.5 !
Bref, un des points que tous les gourous du référencement vous recommandent, est de modifier le schéma d’URL des fiches produits.
En standard l’URL d’une fiche produit est la suivante :
mon-site.com/dernier-niveau-de-categorie-par-defaut/ID-mon-produit.html
L’objectif est d’obtenir :
mon-site.com/ID-mon-produit.html
Simplifier l’URL de la fiche produit en supprimant la catégorie permet une plus grande flexibilité sur la gestion des catégories.
Module de réécriture d’URL
Il existe des modules pour modifier les URLs Prestashop, notamment URL Rewriting +, mais attention aux performances : à chaque URL réécrite, il y a (au moins) un accès base. Sur la page d’accueil d’un client qui référençait certes beaucoup de produit, ce module était responsable à lui seul de + de 100 requêtes SQL !!!
Supprimer la catégorie dans l’URL de la fiche produit Prestashop avec un override
1 – Si il s’agit de ne pas afficher une info, pas besoin de requêtes SQL supplémentaire,
2 – Les URLs simplifiées sont justement construites par Prestashop, modifier la construction de l’URL de la fiche produit revient à modifier la construction de l’URL simplifiée dans le coeur de Prestashop.
Depuis Prestashop 1.4, il est ainsi possible de modifier le fonctionnement du coeur de Prestashop sans modifier le code directement, on appelle ça l’override (article de Julien Breux à lire sur le blog Prestashop). Cette solution permet de maintenir la possibilité de mise à jour de votre Prestashop, indépendamment de vos modifications au coeur.
Il faut donc modifier la fonction responsable de la construction des URLs des fiches produits (getProductLink) pour supprimer l’ajout de la catégorie. Le résultat est en PJ, à déposer dans votre dossier override/classes.
Ce fichier a été testé avec Prestashop 1.4. Nécessite de vider le cache Smarty.
Attention
1 – L’optimisation d’URL est efficace et recommandée, mais pas indispensable : si vous avez un site qui fonctionne bien et qui est bien référencé, ne modifiez pas votre site uniquement pour améliorer les URLs. En revanche si êtes amenés à modifier votre site, et que les URLs vont changer pour des raisons techniques (contrainte CMS, etc…) , profitez-en pour faire des URLs SEO friendly.
2 – Si vous modifiez vos URLs, attention à les maintenir : c’est à dire renvoyer les anciennes URLs vers les nouvelles. Ne vous lancez pas seul dans ce chantier si vous ne savez pas ce que vous faites.
3 – Le fichier override vous est livré gratuitement sans aucune garantie de la part de 202 ecommerce. Merci de ne pas le redistribuer, mais de faire un lien vers cette page.