Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour, je souhaites centraliser mes traductions et ainsi utiliser translate() dans mes views helpers. Je commence tout juste à utiliser ce module alors j'ai besoin d'un peu d'explications.
J'ai réussis à stocker ma langue dans une variable et a faire une traduction dans mon layout:
echo' <li><a href="'.$this->url(array('controller'=>'index','action'=>'language', 'lang'=>'fr','control'=>$this->controller,'act'=>$this->action)).'">'.$this->translate("french").'</a></li>'; echo' <li><a href="'.$this->url(array('controller'=>'index','action'=>'language', 'lang'=>'en','control'=>$this->controller,'act'=>$this->action)).'">'.$this->translate("english").'</a></li>'
Le $this->translate fonctione très bien, il traduit mes mots français ou anglais lorsque je cliques sur l'un d'eux.
Si j'essaye dans un view helper de mettre ce code, j'ai cette erreur:
Fatal error: Call to undefined method Zend_View_Helper_Menu::translate()
Est-ce que quelqu'un a une meilleure façon de procéder ?
Dernière modification par probitaille (20-08-2009 15:08:05)
Hors ligne
Salut,
Il faut que tu récupère ton objet de vue en implémentant une méthode setView qui est appelé par défaut avec l'objet de vue en cours
public $view; public function setView(Zend_View_Interface $view) { $this->view = $view; }
Ensuite normalement tu pourras appeler ton translate via $this->view->translate
Hors ligne
Pages: 1