Jump to content

hookModuleRoutes() changement depuis 1.5.4.1 ?


Recommended Posts

Bonjour,

 

Je me permet d'ouvrir ce post sur la section francaise faute de piste... Je dois peut être être le seul à utiliser la feature mais j'en doutes fort !!

 

Y-a-t-il eu des changement coté "hook module routes" depuis le 1.5.4.1 qui expliquerait que le même hook ne marche plus sur les version supérieures ?

 

En gros :

 
return array('module-tplmcompat-results' => array(  # sur PS 1.5.5.0 il me faut retirer "module-" pour que la "route" soit évaluée... De plus, la valeur du paramètre toto n'est elle pas encodé dans l'url comme le défini la régle

'controller' => 'results',

'rule' =>  'module{/:module}{/:controller}{/:toto}',

'keywords' => array(

'module'  => array('regexp' => '[\w]+', 'param' => 'module'),

'controller' => array('regexp' => '[\w]+',  'param' => 'controller')

'toto' => array('regexp' => '[\w]+',  'param' => 'toto')

),

'params' => array(

'fc' => 'module',

'module' => 'tplmcompat',

'controller' => 'results'

)

));
 

 

 

Merci de votre aide.

 

 

 

--------------------------

Hello all,
 
I'm developing a module which use the nice hook hookModuleRoutes(). I initially started the development on PS 1.5.4.1 and everything is working fine with regards to hookModuleRoutes.
As required by the core, my module returns an array with two entries indexed with following naming convention:
 
return array('module-tplmcompat-results' => array(

'controller' => 'results',

'rule' =>  'module{/:module}{/:controller}{/:toto}',

'keywords' => array(

'module'  => array('regexp' => '[\w]+', 'param' => 'module'),

'controller' => array('regexp' => '[\w]+',  'param' => 'controller')

'toto' => array('regexp' => '[\w]+',  'param' => 'toto')

),

'params' => array(

'fc' => 'module',

'module' => 'tplmcompat',

'controller' => 'results'

)

));
 
In 1.5.4.1, the rewritten url is good and works perfectly. I.e. toto value is correctly encoded in the url:
site store url ......../module/tplmcompat/results/totovalue
 
However, since 1.5.5.0 and also in 1.5.6.0, once installed, all front pages are broken until I had to change:
return array('module-tplmcompat-results' => array(
by
return array('tplmcompat-results' => array(  # remove "module-" keyword
 
After this patch, the module works however, impossible to have the good rewritten url. I definitively have:
site store ...../module/tplmcompat/results?toto=totovalue
 
I didn't see lot of post concerning hookModuleRoutes()... I also saw changes on the Dispatcher and Link classes in 1.5.5.0 and 1.5.6.0 Somebody can help me ? What could be wring here ?
Tks
denis

Edited by dbrondy (see edit history)
Link to comment
Share on other sites

Bonjour,

 

Merci pour le lien.. C'est marrant j'ai implémenté le module en me basant sur un autre tutos qui parle des hookModuleRoutes sans tomber sur celui-ci.

A vue de nez, je vois des différences.. Donc, je vais mettre tout ça à plat. En tout cas, il est plus complet.

 

Merci encore

denis

Link to comment
Share on other sites

Re bonjour DevNet.

 

C'est bon, j'ai remis tout à plat, ça marche bien (testé 1.5.4.1 et 1.5.5.0, pour l'instant). Bizarre quand même, il m'a fallu changer mes appels dans smarty et dans le module pour passer en paramètre le module et le controller (requis par le dispatcher)

 

 {$link->getModuleLink('tplmcompat', 'search', $route_params)}

avec $route_params = array('module' => 'tplmcompat', 'controller' => 'search')

 

Bref, tout marche bien j'ai l'impression. Après je confirme, je tombe dans le problème du block languages dés que j'active une nouvelle langue. Ca c'est la tuille. J'ai pas tout compris encore comment mon module vient impacter le block language... Je vais relire le fait technique JIRA http://forge.prestashop.com/browse/PSCFV-10943..

 

 

Sinon merci encore. Bon maintenant reste à voir comment je release le module avec une telle limitation (block language), je vais essayer de relancer la prestateam.. Ils auront peut être une idée.

 

a+

denis

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...