首页 » 开源/框架 » ThinkPHP » 正文

[TP笔记]自定义ThinkPHP模板相关配置

一、模板定义

每个模块的模板文件是独立的,为了对模板文件更加有效的管理,ThinkPHP对模板文件进行目录划分,默认的模板文件定义规则是:

视图目录/[模板主题/]控制器名/操作名+模板后缀

默认的视图目录是模块的View目录(模块可以有多个视图文件目录,这取决于你的应用需要),框架的默认视图文件后缀是.html。 新版模板主题默认是空(表示不启用模板主题功能)。

在每个模板主题下面,是以模块下面的控制器名为目录,然后是每个控制器的具体操作模板文件,例如:

User控制器的add操作 对应的模板文件就应该是:View/User/add.html

一些其他配置:

'DEFAULT_V_LAYER'       =>  'Template', // 设置默认的视图层名称
//结果:Template/User/add.html

'TMPL_TEMPLATE_SUFFIX'=>'.tpl', //设置默认后缀
//结果:View/User/add.tpl

'TMPL_FILE_DEPR'=>'_', //配置模板的目录层次
//结果:View/User_add.html

'DEFAULT_THEME'    =>    'default', // 设置默认的模板主题
// 没有启用模板主题之前 View/User/add.html 
// 启用模板主题之后 View/default/User/add.html 

 二、模板公共文件目录配置

模板定义时,有很多CSS、JS、图片等文件在多个模块中是可以同时使用的,这时我们就可以把这些文件拿出来放到一个公共目录中,而不用在每个模块下都存放一份,把下面的代码放到 /Application/Common/Conf/Config.php 下面,或者只放在用到公共文件的模块的 /Conf/Config.php 中,然后就可以在模板文件中直接调用这些公共文件了:

/* 模板相关配置 */
'TMPL_PARSE_STRING' => array(
	'__STATIC__' => __ROOT__ . '/Public/static', //静态文件
	'__ADDONS__' => __ROOT__ . '/Public/' . MODULE_NAME . '/Addons', //插件目录
	'__IMG__'    => __ROOT__ . '/Public/' . MODULE_NAME . '/images', //图片目录
	'__CSS__'    => __ROOT__ . '/Public/' . MODULE_NAME . '/css', //CSS目录
	'__JS__'     => __ROOT__ . '/Public/' . MODULE_NAME . '/js', //JS目录
),

引用方式如下:

<link rel="stylesheet" href="__STATICS__/bootstrap3/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="__CSS__/base.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/common.css" media="all">
<script type="text/javascript" src="__JS__/jquery-1.10.2.min.js"></script>

本文共 1 个回复

  • 未填写 2015/09/25 11:59

    MODULE_NAME 不解析 3.2.3 要怎么做 :cry:

发表评论