Toutes les clefs pour réussir dans le e-commerce

Mes modules Prestashop

Problème avec le module advanced slideshow 7 in 1 et une boutique multilangue

Pour une boutique Prestashop j’utilise le module Advanced Slideshow 7 in 1 c’est un bon module (et pas trop cher), mais j’ai repéré un bug assez gènant.

En effet, si vous affichez votre slideshow sur votre page d’accueil celui ne sera pas visible si votre boutique est multilangue.

Car pour afficher le slideshow le module effectue un test sur l’url de votre homepage et il s’attend à recevoir www.maboutique.com. Mais si voutre boutique est multi-langue, l’url de votre homepage sera de la forme www.maboutique.com/fr/ (pour la langue française).

Par conséquent le test ne marche plus et le module n’affiche pas le slideshow.

La solution (pas forcément très propre malheureusement) est de modifier le fichier slideshowadv.php.

Vous devez rechercher la ligne suivante:



if($_SERVER['REQUEST_URI'] == __PS_BASE_URI__) {


et la remplacer par celle-ci:



global $cookie;
if($_SERVER['REQUEST_URI'] == __PS_BASE_URI__ OR $_SERVER['REQUEST_URI'] == __PS_BASE_URI__.Language::getIsoById((int)$cookie->id_lang)."/"){


Voila désormais votre slide s’affiche sur votre page d’accueil.

A noter:

Il y a deux principaux problèmes à ce fixe:

1. L’utilisation d’une globale qui n’est pas une solution vraiment optimisée. Si quelqu’un sait comment récupérer l’id de la langue courante de manière plus propre je prend.

2. La modification directe du fichier du module implique qu’une mise à jour éventuelle du module fera sauter le fixe. La solution serait de surcharger le module là encore si quelqu’un sait comment surcharger un module sous Prestashop ça m’intéresse (c’est surement via le dossier override).

Poster un Commentaire

Soyez le premier à commenter !

Recevoir un email pour
avatar
wpDiscuz