Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonsoir.
Dans le cadre de l'application que je suis en train de développer, j'ai des URL localisées (et récupérées via un plugin pour les traduire en requêtes classiques). J'aimerais pouvoir utiliser $this->url() dans mes scripts de vues pour fournir des URL "classiques", et obtenir des URL localisées automatiquement. Pour cela, il faudrait étendre Zend_View_Helper_Url, mais j'ignore comment indiquer à Zend_View d'utiliser ma classe au lieu du helper d'origine. Dois-je appeler mon helper "Url2" par exemple, ou y a-t-il un moyen de remplacer facilement le $this->url() ?
Merci de vos réponses.
Hors ligne
En principe, les helpers de vue n'ont pas besoin d'êtres déclarés, il devrait suffire de la déclarer de la sorte: [namespace]_Helper_View_Url {
public function url() {
}
}
puis de l'appeler dans ta vue.
Par contre, il sera peut être judicieux d'utiliser l'autoloader.
Il aussi une alternative: étendre Zend_View, réécrire la méthode url et charger ta vue personalisée dans ton bootstrap.
Exemple:
My_Zend_View extends Zend_View {
public function url($mixed) {
if (is_string($mixed)) {
$_tmp = preg_split('#/#', $mixed);
$mixed = array(
'module' => $_tmp[0],
'controller' => $_tmp[1],
'action' => $_tmp[2],
);
}
return parent::url($mixed);
}
}
Hors ligne
Pages: 1