Récemment
-
Erreur 500 suite installation
Questions relatives à l'installation/upgrade13 -
Suite mise à jour vers 1.6.2.15
Bugs & Améliorations6 -
Les metas OpenGraph
Nouvelles fonctionnalités6 -
Installation du module Mondial Relay
Bugs & Améliorations4 -
1.6.2.12 Two Installation Blocking Bugs
Bugs & Améliorations4 -
Disparition des alert success
Bugs & Améliorations3 -
Mise en avant de PhenixSuite
Nouvelles fonctionnalités3 -
Multi boutique, url virtuelles
Bugs & Améliorations3 -
1.6.2.11 - Bug classe Carrier
Bugs & Améliorations2 -
Aide au debogage Javascript (chargement + événements panier)
Bugs & Améliorations5 -
SendinBlue pour PhenixSuite (API V3)
Modules1 -
Override du module Sthoverimage
Modules1 -
Informations générales
PhenixSuite2 -
Des modules et des hacks - liste non exhaustive des modules présentant un risque
Discussion générale16 -
Comment offrir frais de port à partir d'un certain montant MAIS avec transport facturé au poids ?
Discussion générale5 -
Patch de sécurité thèmes warehouse / iqit (Versions 1.5 & 1.6)
Discussion générale1 -
Copieurs-Colleurs
Discussion générale2 -
Créer un contrôleur front (indépendant)
Tutoriels1 -
Fourre-tout de trucs et astuces
Tutoriels4 -
[1.3] Implanter des classes overrides
Tutoriels1
[1.5.x],[1.6.x],[1.7.x] Pas de redirection canonical pour page manufacturer & supplier
-
Lorsque vous effectuez une redirection /index.php?controller=manufactuer|supplier (sans id), aucune redirection canonique n'est prise en compte.
Ex:
https://domain.tld/marques => mène à la liste des manufacturer (marques)
https://domain.tld/index.php?controller=manufacturer => mène à la liste des manufacturer (marques)Aucun redirection canonique n'intervient dans le second cas
Seul le cas lorsqu'un id est fourni est implanté dans les contrôleurs.
Remplacer dans ManufacturerController.php:public function canonicalRedirection($canonicalURL = '') { if (Tools::getValue('live_edit')) { return; } if (Validate::isLoadedObject($this->manufacturer)) { parent::canonicalRedirection($this->context->link->getManufacturerLink($this->manufacturer)); } }
par
public function canonicalRedirection($canonicalURL = '') { if (Tools::getValue('live_edit')) { return; } if (!Validate::isLoadedObject($this->manufacturer) && (int)Tools::getValue('id_manufacturer')) { $this->manufacturer = new Manufacturer((int)Tools::getValue('id_manufacturer'), $this->context->language->id); } if (Validate::isLoadedObject($this->manufacturer)) { return parent::canonicalRedirection($this->context->link->getManufacturerLink($this->manufacturer)); } parent::canonicalRedirection($canonicalURL); }
-
Comme ces 2 là font toujours la paire, la même ligne est à ajouter dans SupplierController.php ;)
public function canonicalRedirection($canonicalURL = '') { if (Tools::getValue('live_edit')) { return; } if (!Validate::isLoadedObject($this->supplierr) && (int)Tools::getValue('id_supplier')) { $this->supplier = new Supplier((int)Tools::getValue('id_supplier'), $this->context->language->id); } if (Validate::isLoadedObject($this->supplier)) { parent::canonicalRedirection($this->context->link->getSupplierLink($this->supplier)); } parent::canonicalRedirection($canonicalURL); }
-
@eolia au temps pour moi je pensais que le titre était suffisamment clair (manufacturer et supplier)
-
Attention il y a eu une grosse coquille dans le code publié plus tôt.
Il est maintenant corrigé mais pensez à le vérifier si vous avez appliqué le patch précédemment