Je souhaite afficher une vue mobile au lieu du script de vue normal.Commutateur de nom de script de vue par défaut Zend
Prenons par exemple cette action/my_module/my_controller/my_action. Quand je l'appelle, en fonction du traitement de certains en-têtes, je sais que l'agent utilisateur est un périphérique mobile. Ensuite, je définis la mise en page principale comme étant une mise en page spécifique au mobile. Je le fais comme ça et il fonctionne très bien: Zend_Layout::getMvcInstance()->setLayout('mobile');
Mais dans mon contrôleur ou un autre endroit que je veux remplacer le fichier d'affichage par défaut my_action.phtml
sur quelque chose comme my_action_mobile.phtml
.
Comment cela pouvait se faire étant donné que je suis en utilisant l'aide d'action comme cela dans certaines de mes vues: <?php echo $this->action("index", "index", "items")?>
ou est une partie de mon action Je _forward comme ceci: $this->_forward("index", "auth", "default");
J'ai essayé avec setViewSuffix('mobile')
et avec plusieurs variantes de nom de fichier comme: my_action.mobile.phtml, ou setViewSuffix('mobile.phtml')
et le fichier appelé my_action.mobile.phtml et autres, résultant en une page blanche - pas d'erreur, rien. (Je n'ai aucune idee pourquoi parce qu'il est configuré pour afficher les erreurs lancées)
Aussi j'ai essayé avec le contextSwitching mais il désactive ma disposition principale - je ne veux pas ceci - et il se sent comme il ne manipule pas correctement l'action voir l'aide. (une vue rendue dans un autre)
J'apprécierais n'importe quelle suddgestion. Je vous remercie!