2010-11-15 13 views
0

Je suis à la recherche de la solution du problème de la combinaison de Zend_Navigation dans la mise en page multilingue avec les routeurs. J'ai écrit plusieurs routeurs (par exemple '/: lang /: controller /: action'), qui fonctionnent bien. En même temps j'utilise navigation.xml qui a des définitions comme <user> <label>Users</label> <uri>mdm/users</uri> </user> Je dois ajouter dynamiquement la langue par défaut à la navigation. Comment puis-je faire ceci?Zend_Navigation & Zend Router

Merci beaucoup, Anatoliy

Répondre

0

Pourquoi ne vous définissez pas la langue par défaut dans la route?

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

Notez que j'ai remplacé la route « par défaut » comme schéma de routage correspondrait à la valeur par défaut :module/:controller/:action

+0

je l'ai fait, je définissais plusieurs routes, mais si je rends ma navigation sur la première page - par exemple. Les liens de navigation de mysuperpage.com ressemblent à mysuperpage.com/:controller/:action, ce qui ne fonctionne pas comme je l'ai défini dans Routes mysuperpage.com/:lang/:controller/:action ou mysuperpage.com/:lang/:controller, et sur le première page je n'ai pas de définition de lang. Dès que je change de lang j'ai mysuperpage.com/:lang/, alors la navigation fonctionne très bien. Pour le routage par défaut (page d'introduction sans aucun paramètre, j'ai défini la langue par défaut), après quoi la navigation est rendue par Zend-Framework, qui est sans /: lang /. – Anatoliy

+0

et c'est exactement le problème; / – Anatoliy

Questions connexes