使用Dwoo在Codeigniter模板中包含视图的最佳方法?

时间:2010-07-12 01:00:12

标签: php codeigniter smarty template-engine dwoo

我正在使用Codeigniter 1.7.2和Phil Sturgeon的精彩Dwoo包装器,它允许我在Codeigniter中使用Dwoo模板库 - http://philsturgeon.co.uk/code/codeigniter-dwoo

关于在我的模板文件中包含其他视图模板文件,我有一个小问题。比方说,我有一个dashboard.php文件,我想要包含页眉和页脚,这样做的最佳方式是什么?

我通常会这样做:

<?php
$this->load->view('header');
?>

这似乎有效,但使用模板库的重点是将代码与我的html分开。我可以使用Dwoo的include功能吗?如果有,可以如何使用?

更新
自从发布这个我已经解决了Dwoo的细节之后,你可以包含视图文件并使用模板继承之类的东西来完成与为变量分配视图相比更整洁的事情。除非你真的需要,否则我不建议使用后者。

1 个答案:

答案 0 :(得分:10)

我不知道Dwoo,但您应该能够将解析器的输出分配给变量并将其传递给您的视图:

$data_array['header'] = $this->parser->parse('header', $header_data, TRUE);

如果您不需要解析页眉/页脚,只需将视图输出分配给变量并将其传递给模板即可。语法基本相同:

$data_array['header'] = $this->load->view('header', '', TRUE);

参考:http://codeigniter.com/user_guide/libraries/parser.htmlhttp://codeigniter.com/user_guide/general/views.html

然后,根据它的外观(在使用时阅读Dwoo的wiki),您只需将{$header}添加到您希望标题出现的模板中。