首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FuelPHP模板

FuelPHP模板
EN

Stack Overflow用户
提问于 2013-08-03 07:23:24
回答 2查看 2.7K关注 0票数 1

在FuelPHP online中,我没有看到很多关于模板的教程。正式文档中的部分并没有真正解释任何事情。

有没有其他人可以推荐的例子或教程?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-31 23:22:48

在FuelPHP中没有真正的模板这样的东西。

有一个模板控制器,它允许您将视图设置为“页面模板”,并在控制器操作完成后自动呈现它。

所以控制器中的模板是一个正常的视图。将部分传递给它只不过是将变量传递给它,它可能包含另一个View对象(例如,页眉或页脚视图)。http://fuelphp.com/docs/general/views.html在“嵌套视图”下有一个示例。

如果您想要一个更灵活的系统,您应该查看主题类,它可以处理主题(多个)、模板、部分、主题回退、中央视图文件夹等。

票数 3
EN

Stack Overflow用户

发布于 2013-10-03 15:16:28

为了使用Fuelphp Controller_Template的方向性,使用基本元素创建一个名为template.php的默认视图:

代码语言:javascript
复制
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html" xmlns="http://www.w3.org/1999/html" xmlns="http://www.w3.org/1999/html">
<head>
    <meta charset="utf-8">
    <title>Website<?php echo isset($title) ? ' - '.$title : ''; ?></title>
    <?php echo Asset::css('style.css'); ?>
    <?php echo Asset::js('global.js'); ?>
</head>
<body>
    <div id="header">
        <!-- Some code -->
    </div>
    <div class="container">
        <?php echo isset($content) ? $content : ''; ?>
        <hr/>
        <footer>
            <!-- Some code -->
        </footer>
    </div>
</body>
</html>

然后,在您的页面控制器(ex: Controller_Home)中,扩展Controller_Template,并将这些变量放在前面的一个函数中:

代码语言:javascript
复制
class Controller_Home extends \Fuel\Core\Controller_Template
{
    public function before()
    {
        parent::before();
        $this->template->menu = 'home';
        $this->template->title = 'Home';
    }
}

然后,当您想要在这个控制器中调用一个页面(例如: index.php)时,尝试如下:

代码语言:javascript
复制
public function action_index()
{
    $this->template->content = View::forge('home/index');
}

它将显示模板和页面(视图) index.php。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18030443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档