Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 22-08-2008 18:10:51

Bouki
Membre
Date d'inscription: 20-07-2008
Messages: 30

url rewriting

bonjour,

j'ai actuellement ceci dans mon bootstrap :

Code:

$router = new Zend_Controller_Router_Rewrite();
$router->addRoute(
    'default',
    new Zend_Controller_Router_Route(
        '/:module/:language/:controller/:action/*',
        array(
            'module'        =>  'default',
            'language',
            'controller'    =>  'index',
            'action'        =>  'index'
        )
    )
);

(...)
$frontController->setRouter($router);

ce qui fait que mes pages sont actuellement comme ceci : /default/fr/index/index/category/1/

je voudrais pour certaines pages seulement (les publiques) modifier l'url pour qu'elle soit plus belle,

je voudrais que /category-%d-nom/ redirige vers default/fr/index/index/category/%d/ (et de meme pour d'autres pages)

j'ai essayé en ajoutant une route mais la premiere est toujours prise quand meme

Hors ligne

 

#2 22-08-2008 19:10:11

lethak
Membre
Lieu: France
Date d'inscription: 05-04-2008
Messages: 168

Re: url rewriting

je pense que la réponse a ta question ce trouve par là wink

tu peux même faire


Code:

$router->removeDefaultRoutes();

pour enlever le comportement par default du routeur, ce qui te permet de définir toutes tes routes toi même sans risque de doublons.

Dernière modification par lethak (22-08-2008 19:12:45)


IT Dev @Twitter

Hors ligne

 

#3 22-08-2008 19:55:37

Bouki
Membre
Date d'inscription: 20-07-2008
Messages: 30

Re: url rewriting

j'ai fait :

Code:

$router->addRoute(
    'IndexController',
    new Zend_Controller_Router_Route_Regex(
        'cat-(\d+)-(.+)',
        array(
            'module'        =>  'default',
            'language'      =>  'fr',
            'controller'    =>  'index',
            'action'        =>  'index'
        ),
        array(
            1 => 'category',
            2 => 'description'
        )
    )
);

et ca marche, je voudrais maintenant avoir une url du type :
/default/language/cat-%d-%s

cependant la je n'y arrive pas, meme en mettant en "dur" dans l'expression régulière default/fr/ il prend la seconde route de type module/language/controller/action

Hors ligne

 

#4 26-08-2008 08:32:01

Nikkau
Membre
Date d'inscription: 25-03-2008
Messages: 52

Re: url rewriting

Imho, il faut, soit que tu rendes plus restrictive celle que tu viens de nous afficher, soit que tu changes l'ordre pour que la nouvelle que tu tentes de faire soit testée avant l'autre.

Hors ligne

 

#5 26-08-2008 09:44:19

Bouki
Membre
Date d'inscription: 20-07-2008
Messages: 30

Re: url rewriting

rendre plus restrictive ? je ne vois pas trop, je débute avec zend_controller_route

dans l'ordre j'ai mis d'abord la route spécial puis la route général

Hors ligne

 

#6 29-08-2008 14:37:54

Bouki
Membre
Date d'inscription: 20-07-2008
Messages: 30

Re: url rewriting

personne n'a d'idées ?!

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages