开启辅助访问
帐号登录 |立即注册

thinkphp的模板布局layout和{__CONTENT__}

 
模板布局
全局配置
比较适用于全站使用相同布局的情况(比如顶部和底部保持不变)

1、需要在config目录下的template.php 文件中添加以下配置

//开启全局模板布局
'layout_on'     =>  true,
//全局模板布局文件名
'layout_name'   =>  'layout',

2、渲染模板
Demo8.php
[PHP] 纯文本查看 复制代码
<?php
namespace app\index\controller;
use think\Controller;
class Demo8 extends Controller
{
    public function test1()
    {
        return $this->view->fetch('test1');
    }
}


模板test1.html
[PHP] 纯文本查看 复制代码
<h2 style="color: blue">我是网站的内容区</h2>


全局模板 layout.html
(放在view文件夹内)
[PHP] 纯文本查看 复制代码
{include file="header"}
{__CONTENT__}
{include file="footer"}


header.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h2 style="color: red;">我是网站的顶部</h2>

footer.html
<h2 style="color: green;">我是网站的底部</h2>
</body>
</html>
注:
在不开启layout_on布局模板之前,会直接渲染 application/index/view/Demo8/test1.html 模板文件,开启之后,首先会渲染application/index/view/layout.html 模板,读取layout模板之后会再解析Demo8/test1.html 模板文件
布局模板的写法和其他模板的写法类似,本身也可以支持所有的模板标签以及包含文件,区别在于有一个特定的输出替换变量 {__CONTENT__}
layout.html、header.html、footer.html 都是之间放在application/index/view目录下
以上就是本文的全部内容,感谢大家支持JScript之家——编程学习者社区!



回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

友情链接
  • 艾Q网

    提供设计文章,教程和分享聚合信息与导航工具,最新音乐,动漫,游戏资讯的网站。