もちろん使用する、というのはView_Helperとして。楽ちんですからね。2007/07/20の最新バージョンである1.0.0で動作を確認しています。
Smarty用のZendViewはマニュアルに載っています。
これを保存して、
(ドキュメント上ではZend_View_Smartyとなっていますが、
Common_View_Smartyと変更しています)
起動ファイルで
[php]
require_once ‘Common/View/Smarty.php’;
require_once ‘Zend/Controller/Action/Helper/ViewRenderer.php’;
require_once ‘Zend/Controller/Action/HelperBroker.php’;
$extraParams = array(
‘compile_dir’ => APPLICATION_PATH. ‘/views/templates_c’,
/* 他色々なSmartyオプション */
);
$view = new Common_View_Smarty(null, $extraParams);
$viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer($view);
$viewRenderer->setViewBasePathSpec(APPLICATION_PATH . ‘/views/templates’)
->setViewScriptPathSpec(‘:controller/:action.:suffix’)
->setViewScriptPathNoControllerSpec(‘:action.:suffix’)
->setViewSuffix(‘tpl’);
Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
[/php]
としてやれば、ViewHelperとして動作します。
#上記APPLICATION_PATH . ‘/views/templates’はお使いのtemplate階層に合わせてください。