Récemment
-
Des modules et des hacks - liste non exhaustive des modules présentant un risque
Discussion générale17 -
Thème enfant
PhenixSuite16 -
SumUp Payments Constant Update Request
Modules2 -
PaypalAPI erreur
PhenixSuite53 -
Problèmes de prix avec plusieurs devises et PayPal
PhenixSuite6 -
Solutions de paiement...
Discussion générale5 -
Petit code pour les descriptions de produits
Discussion générale3 -
Feuilles de styles non chargées si smart cache activé [RÉSOLU]
PhenixSuite5 -
PayPal Module Error
Bugs & Améliorations2 -
Transient Bug after 1.6.2.31 Upgrade
Bugs & Améliorations2 -
blockcategory et left_column
BUG connus1 -
[REGLÉ] override - je n'y arrive pas.
Modules10 -
les routes sur mesures
Discussion générale6 -
Nouvelle attaque ?
Discussion générale11 -
Problème calcul HT
Bugs & Améliorations42 -
Erreur sur facture générée depuis le FO
PhenixSuite3 -
Factures ne se génèrent plus depuis 06/12 [RÉSOLU]
Bugs & Améliorations20 -
Edition en masse des déclinaisons
Nouvelles fonctionnalités4 -
Mise à niveau de Prestashop 1.6.24 vers PhenixSuite 1.6.30
Discussion générale2 -
Thème possible
Questions relatives à l'installation/upgrade2
les routes sur mesures
-
J'aimerais faire une route sur mesure, mais je ne sais pas ou chercher, j'ai bien la doc qui l'explique pour un module mais cela ne semble pas marcher pour un controleur, un truc du style là:
j'ai cru comprendre
- que l'on pourrait overwrite le contrôleur contact (mais que c'est pas forcement une bonne pratique) car les mises à jour ne fonctionneraient/se verraient pas.
- je crois que l'on pourrait ajouter directement dans le contrôleurs (mais je ne sais pas encore comment) mais la aussi à la mise à jour, cela casse.
- j'ai crue lire qu'on pourrait décorer le contrôleur, mais cela ne marche pas.
class FormocontactContactControllerCore extends ContactControllerCore
{public function hookModuleRoutes($params) { $customRoutes = [ 'module-' . $this->name . '-contact' => [ /* forcement ça peut pas marcher*/ 'controller' => 'contact', 'rule' => 'contact', 'keywords' => array(), 'params' => array( 'fc' => 'module', 'module' => $this->name, ), ], ]; return $customRoutes; }
}
alors je pourrais toujours le faire avec le mod rewrite d'apache, mais cela ne me permettrais pas de comprendre et le faire pour les produits.
merci si vous aviez une piste de travail, je serais preneur.
-
je ne suis pas certain, mais je crois que ce topic répondra à mes questions
https://bb.enter-solutions.net/topic/1114/créer-un-contrôleur-front-indépendant
désolé pour le bruit
-
Je ne suis pas sûr d'avoir exactement compris le use case.
Je note néanmoins que le nouveau controlleur s'appelle FormocontactContactController mais que la route stipule controller "contact", comment le Dispatcher sait qu'il doit lancer FormocontactContact ?
Mais je persiste je n'ai pas compris l'objectif
-
oui, il y a un soucis parce que le bouquin que j'ai ne me propose QUE la route pour son propre module.
Je voulais réécrire la route du contrôleur contact qui est par défaut
https://site.com/index.php?controller=contact
en
https://site.com/contact.je me suis attaqué (un peu en dilettante, mais pas trop) à celui-ci car j'ai monté un micro-module qui donne des informatisations de contacts et qui propose un lien vers le contrôleur de contact "officiel" de phenixsuite. et je tentais de bidouiller pour le faire tomber en marche.
mon arrière pensée est que lorsque je ferais la migration du site, je veux que les url-friendly de prestashop 1.7.7.3 (oui j'ai un coté mazo, je travaille sur un backport d'un presta 1.7.3 (ou 1.7.7.3) vers phenix suite, prestat 1.7.3 qui était une migration dans la douleur d'un presta1.4), mais c'est pour un ami et plutôt que de migrer dans l'extrême douleur vers presta 8 et bientôt 9 dans l’univers incertain de prestashop, j'ai préféré le pousser vers phenix suite. et donc je me dois de devenir compétent dans la chose. D’où mon "apprentissage" par talonnement.
En plus le bougre veux un "identique", ce qui me fait m'arracher les cheveux....8000 lignes de global.css, moi qui avait l'habitude de monter hml/css/javascript/php à la main mes yeux pleurent des larmes de sang :-)
Mais j'ai survolé rapidement le tuto en question, parce que j'ai plus les yeux en face des trous, et je crois que je tenterais cela demain pour voir si j'avance dans la compréhension..
-
En effet le hook d'injection des routes ne fonctionne que pour un module
Si le besoin est seulement de changer l'url simplifié, il suffit en 1.6.x de l'ajuster dans SEO & URL, en 1.7 c'est dans Paramètres de la boutique / Traffic et SEO.
Pas besoin de coder quoique ce soit
-
J'ai peut-être répondu trop vite dans mon dernier message car je ne suis finalement pas sûr de comprendre;
De toute manière si un module veut implanter son propre controller front l'url simplifiée aura TOUJOURS la forme /module/<nom-du-module>/<nom-du-controller> et c'est d'ailleurs case sensitive