在我正在工作的项目中,我必须做两个版本的网站,一个桌面版本和一个移动版本。为了做到这一点,我不得不使用 wurfl 库,并创建了一个名为Plugins_Context
的frontController插件。
在该课程中,在dispatchLoopStartup
方法中,我检查设备是否是移动设备,我加载了另一个布局Zend_Layout::getMvcInstance()->setLayout('mobile');
。使用新的移动布局加载 application / layouts / scripts / mobile.phtml ,我遇到的问题是当我调用$this->layout()->content
它从常规视图加载内容时,我需要加载新移动视图的内容。
谢谢!
答案 0 :(得分:0)
我遇到了类似的问题,我所做的就是不使用
$this->layout()->content;
并从不同的布局中调用不同的操作,例如 -
$this->action('index', 'index','main');
和
$this->action('index_mobile', 'index','main');
希望它有所帮助。
答案 1 :(得分:0)
我使用下面的代码解决了这个问题
是强>
$mobile = $this->request->getControllerName() . "/" . $this->request->getActionName() . ".mobile.phtml";
echo $this->partial($mobile,$params);
而不是
echo $this->layout()->content;
考虑您拥有名称
中名称后缀为.mobile的所有移动模板