Création et référencement de sites internet - centre de formation

Infogérance, intranets, sites web et formations: actualités et tutoriels

Module GSitemap Prestashop: URLs non réécrites

Encore un problème courant mais dont la solution n'est pas toujours bien indiquée: quand on lance le module Gsitemap, les URLs ne sont pas réécrites. (Je précise que j'utilise la version 1.5.1 de Prestashop.)

J'ai fait un premier essai en modifiant le fichier gsitemap (solution trouvée sur forum), j'ai obtenu de meilleurs résultats : les URLs sont réécrites, mais pas réécrites comme dans mon site. Il faut dire que j'avais overridé la réécriture d'URLs, et manifestement mon override n'était pas pris en compte.

Après debug, j'ai donc vu qu'il suffisait en fait d'overrider le fichier Dispatcher (donc créer le fichier override/class/Dispatcher s'il n'existe pas encore) pour lui dire d'utiliser la réécriture si je suis dans le module sitemap.  Il faut recopier dans ce fichier la fonction __construct, et y ajouter une ligne comme suit:
On remplace

// Select right front controller
        if (defined('_PS_ADMIN_DIR_'))
        {
            $this->front_controller = self::FC_ADMIN;
            $this->controller_not_found = 'adminnotfound';
            $this->default_controller = 'adminhome';
        }

par:

Lire la suite