我需要在布局中使用一个表单,因为它会显示在我的所有页面上(搜索表单) 我怎么能这样做?
答案 0 :(得分:2)
您可以为此任务使用ControllerPlugin。
// application/plugins/Search.php
class My_Plugin_Search extends Zend_Controller_Plugin_Abstract
{
/**
* PreDispatch
*
* @param Zend_Controller_Request_Abstract $request
*
* @return void
*/
public function preDispatch(Zend_Controller_Request_Abstract $request)
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$form = new My_Form_Search();
$view->searchForm = $form;
}
}
并在你的layout.phtml中
echo $this->searchForm;
要使用插件,您必须在application.ini中注册它:
resources.frontController.plugins.0 =“My_Plugin_Search”
答案 1 :(得分:1)
这很好用:
<div id="searchForm">
<h2>Search Site</h2>
<?php
$searchForm = new Application_Form_Search();
$searchForm->setAction('/search');
echo $searchForm;
?>
</div>
这样做的好处是简单,它绝不是完成这项任务的唯一方法。