emlog模板结构介绍本文分析emlog4下的模板结构。 emlog的模板位于content\templates\文件夹下,安装只需解压上传到该目录,然后在管理后台选择该模板即可更换模板。 emlog的模板一般包括如下文件:
下面我们一个个分析文件内容: header.php开头注释内容是模板信息,该信息显示在模板选择界面 Template Name:模板名称 Description:模板介绍描述 Author:模板作者 Author Url:作者或模板发布的URL Sidebar Amount:标记该模板有几个侧边栏,一般为1,有些模板有两个侧边栏则标记2。这样可以在后台widgets里识别管理(具体可下载体验官方收录的模板G7)。 之后是具体代码部分:
该行代码同样存在于其它模板文件中,为防止该文件被直接执行。 require_once View::getView('module'); 加载模板公共代码,需要注意的是加粗部分与3.x有变化,模板升级的同学需要注意一下。 $blogtitle:标题 $site_key:关键字(4.0的关键字可以输出日志的标签了) $description:输出博客设置的摘要 BLOG_URL:博客首页的URL,输出形如http:///blog/ TEMPLATE_URL:模板文件夹的URL,用于加载模板内的css、js及其他内容,输出形如http:///blog/content/templates/simue-tuso/ BLOG_URL.Option::get('topimg'):这句可以无视,因为只默认模板可以自定义banner,其它模板没这功能(卡片语:很没营养的设定,嗯。) 判断当前是否首页,是则给导航加current类,用于表现当前位置。 ....... 如后台设置在前台显示碎语,则输出.......中的内容。 判断当前URL是否为碎语并选择加类名。 $val):?>....... 输出自定义页面的链接 ', ''); ?> 导航挂载点加入,第2、3参数分别为包裹导航链接的开始和结束部分,可根据模板自定义。 ...... 如管理员或作者登录则显示.......中的内容。
footer.phpOption::EMLOG_VERSION:获得版本号。 $icp:获得后台设置的ICP备案号。 页脚底部挂载点加入。
log_list.php页脚底部挂载点加入。 $value['logid'] 该变量为当前日志的id 显示置顶标记,该函数位于模板module.php内。 输出日志URL 输出日志标题 输出日志的作者,该函数位于模板module.php内。 输出日志发布时间,参数'Y-n-j G:i l'用于定义日期格式。 输出日志所属的分类,该函数位于模板module.php内。 当管理员或作者登陆时显示“编辑”链接,该函数位于模板module.php内。 输出日志摘要(没有摘要则输出全文)。 如日志有附件则输出附件,该函数位于模板module.php内。 输出日志的标签,该函数位于模板module.php内。 输出当前日志的评论数 输出当前日志的引用量 输出当前日志的浏览量
显示当前列表页的翻页功能。
include View::getView('side'); include View::getView('footer'); ?> 加入侧边栏及加入页脚。
echo_log.php该文件功能函数与列表页一致,但参数有区别,注意区分。 $logid 该变量为当前日志的id 显示置顶标记,该函数位于模板module.php内。 输出日志标题。 输出日志的作者,该函数位于模板module.php内。 输出日志发布时间,参数'Y-n-j G:i l'用于定义日期格式。 输出日志所属的分类,该函数位于模板module.php内。 当管理员或作者登陆时显示“编辑”链接,该函数位于模板module.php内。 输出日志全文内容。 如日志有附件则输出附件,该函数位于模板module.php内。 输出日志的标签,该函数位于模板module.php内。 日志页显示评论数 日志页显示引用数 日志页显示浏览量 相关日志的挂载点,与3.x版本不同,4.0带第二参数。 输出邻近,就是上一篇及下一篇,该函数位于模板module.php内。 输出该日志被引用的信息列表,与3.x不同注意区分。 输出该日志评论列表,与3.x不同注意区分。 输出发表评论框,与3.x不同注意区分。
page.php该文件写法与echo_log.php类似,不再重复。
t.php与之前相同的内容不再重复。 输出头像。 输出作者名。 输出碎语内容。 根据当前url输出博客地址,主要用于js,解决跨域问题。 输出碎语所在数据库中的id号。 发布碎语的时间。 $reply_code :其值为‘n’或‘y’,后台设置是否启用碎语回复验证码。 输出验证码。
side.php侧边栏,主要负责根据后台widgets设置信息输出侧边栏内容。建议该文件内代码保持不变。 doAction('diff_side'); //侧边栏挂载点。
module.php模板公共代码,包含侧边widgets、评论、引用、编辑等。 该文件由若干函数组成,被博客前台文件调用,可在内自定义函数实现更多功能。 如在自定义函数内调用emlog缓存时,假设读取user缓存信息,则形如:
如需要操作数据库,则形如:
以上两点与3.x不同,请注意区分。
最后附:前台模板部分挂载点一览:doAction('navbar', ' doAction('index_footer'); //页脚底部挂载点 doAction('index_loglist_top'); //首页日志列表顶部挂载点 doAction('log_related', $logData); //相关日志挂载点 doAction('diff_side'); //侧边栏挂载点
|
|