DaRkShAfT 0 Denunciar post Postado Janeiro 11, 2011 Oi galera, Como é que eu configuro a zf para receber os parâmetros desta maneira: http://oseusite.com/vBR/controller/action ou seja, vBR é o idioma do site... vBR, vPT, vEN, etc... Valeu[] Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Janeiro 12, 2011 Bom, você vai precisar de duas etapas. Uma delas é a reescrita da URL, para que, ao invés de site.com.br/controller/action ele fique site.com.br/lang/controller/action. Então, no seu application.ini você adiciona: ;; rotas - lang resources.router.routes.lang.route = ":lang/:controller/:action/" resources.router.routes.lang.defaults.module = default resources.router.routes.lang.defaults.controller = index resources.router.routes.lang.defaults.action = index resources.router.routes.lang.defaults.lang = vBR Ao fazer isto, a URL já será reescrita a linguagem vai ficar disponível em $this->_request->getParam('lang') dentro do controller. Para fazer o site em multilinguas, aí você pode utilizar Zend_Translate. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
DaRkShAfT 0 Denunciar post Postado Fevereiro 20, 2011 Bom, você vai precisar de duas etapas. Uma delas é a reescrita da URL, para que, ao invés de site.com.br/controller/action ele fique site.com.br/lang/controller/action. Então, no seu application.ini você adiciona: ;; rotas - lang resources.router.routes.lang.route = ":lang/:controller/:action/" resources.router.routes.lang.defaults.module = default resources.router.routes.lang.defaults.controller = index resources.router.routes.lang.defaults.action = index resources.router.routes.lang.defaults.lang = vBR Ao fazer isto, a URL já será reescrita a linguagem vai ficar disponível em $this->_request->getParam('lang') dentro do controller. Para fazer o site em multilinguas, aí você pode utilizar Zend_Translate. Carlos Eduardo Oi, Sim é isso aí... Mas eu tenho outra questão, eu criando dois módulos admin/ e public/ posso ter configs diferentes? É porque eu no módulo admin/ vou querer trabalhar normalmente /controller/action, somente no public/ é que vou querer deste modo /idioma/controller/action Dá para configurar desta maneira? [] Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Fevereiro 21, 2011 O padrão é modulo/controller/action. Você pode trabalhar com configs separadas, mas não precisa. É só toda vez que você colocar uma URL do admin você definir como rota default. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
DaRkShAfT 0 Denunciar post Postado Fevereiro 21, 2011 O padrão é modulo/controller/action. Você pode trabalhar com configs separadas, mas não precisa. É só toda vez que você colocar uma URL do admin você definir como rota default. Carlos Eduardo Oi, Ok, para já vou querer meter a funcionar o módulo admin... Eu já tenho a estrutura da aplicação configurada, agora estou com um probleminha... Eu vou ter um layout diferente para cada módulo, por isso a directoria layout vai estar dentro de cada módulo... Eu sei que poderia colocar tudo na directoria layouts, mas eu optei por criar assim para ficar mais lógico... Só que agora não sei como configurar para a framework ir buscar em cada módulo o respectivo layout, como posso configurar? Valeu[] Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Fevereiro 21, 2011 Isto já é outro problema. Como já te falei algumas vezes, mantenha uma dúvida só por tópico. Sobre a questão de multi language já resolveu ou ainda não tentou fazer? Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
DaRkShAfT 0 Denunciar post Postado Março 5, 2011 O padrão é modulo/controller/action. Você pode trabalhar com configs separadas, mas não precisa. É só toda vez que você colocar uma URL do admin você definir como rota default. Carlos Eduardo Oi, como é que eu posso definir como rota default se estiver acedendo ao admin? :joia: [] Compartilhar este post Link para o post Compartilhar em outros sites
Tiare Balbi Bonamini 2 Denunciar post Postado Abril 8, 2011 Crie uma rota default a partir da URL acessada definindo os valores iniciais do sistema. Um exemplo que já utilizei abaixo. protected function _initRoutes() { $this->bootstrap('FrontController'); $this->_frontController = $this->getResource('FrontController'); $router = $this->_frontController->getRouter(); $router->addRoute('router_controller_action', new Zend_Controller_Router_Route( ':lang/:module/:controller/:action', array( 'lang'=>'br','module'=>'default','controller'=>'index','action'=>'index') ) ); $router->addRoute('router_controller', new Zend_Controller_Router_Route( ':lang/:module/:controller/', array('lang'=>'br','module'=>'default', 'controller'=>'index', 'action'=>'index' ) ) ); $router->addRoute('router_module', new Zend_Controller_Router_Route( ':lang/:module/', array('lang'=>'br','module'=>'default', 'controller'=>'index', 'action'=>'index' ) ) ); $router->addRoute('router_lang', new Zend_Controller_Router_Route( ':lang/', array('lang'=>'br','module'=>'default', 'controller'=>'index', 'action'=>'index' ) ) ); } Compartilhar este post Link para o post Compartilhar em outros sites