杰奇|杰奇模板详解
modules/article/templates // 文章系统模板
modules/article/templates/blocks // 文章系统区块模板
modules/forum/templates // 论坛系统模板
modules/forum/templates/blocks // 论坛系统区块模板
templates // 公用页面模板(例如用户档案)
templates/blocks // 公用页面区块模板
themes/default // 主要风格模板modules/article/templates/index.html // 目录页面
modules/article/templates/style.html // 章节内容
modules/article/templates/fulltext.html // 全文阅读
modules/article/templates/articleinfo.html // 书籍摘要页面
themes/default/theme.html // 动态页面公用模板
模板标签
下面对 theme.html 模板中使用到的标签做简单的说明:
在模板文件的html源代码中插入如下标签,即可在页面中显示出来相应内容。说明:V1.30以下版本,标签格式为<{XXX}>,V1.30以上版本标签的格式为{?XXX?},注意使用。
<{$jieqi_pagetitle}>// 网页标题
<{$jieqi_charset}>// 网页字符集,对应后台系统定义中的“默认语言”
<{$meta_keywords}>// 网页关键字,对应后台系统定义中的“网站关键字”
<{$meta_description}>// 网站描述,对应后台系统定义中的“网站描述”
<{$meta_author}>// 作者
<{$meta_copyright}>// 版权申明,对应后台系统定义中的“版权申明”
<{$jieqi_css}>// 系统CSS引用,由系统自动生成
<{$jieqi_head}>// 头部插入代码,对应后台系统定义中的“头部插入代码”
<{$jieqi_top_bar}>// 顶部通栏代码,对应后台系统定义中的“顶部通栏代码”
<{$jieqi_logininfo}>// 注册用户登入详细资料
<{$url_gb2312}>// GB2313编码的链接
<{$url_big5}>// BIG5编码的链接
<{$jieqi_imageurl}>// JIEQI CMS图片文件夹路径
<{$jieqi_url}>// JIEQI CMS首页链接,对应后台系统定义中的“网站地址”
<{$jieqi_banner}>// BANNER代码,对应后台系统定义中的“BANNER代码”
<{$jieqi_email}>// 联系Email,对应后台系统定义中的“联系Email”
<{$jieqi_menu}>// 系统菜单,如果后台系统定义中“是否使用系统菜单”一项为是,则使用由 configs/mainmenu.php 定义的菜单项目
<{$jieqi_sitename}>// 网站名称,对应后台系统定义中的“网站名称”
<{$jieqi_bottom_bar}>// 底部通栏代码,对应后台系统定义中的“底部部通栏代码”
<{$jieqi_tblocks[i].title}>// 顶部区块标题
<{$jieqi_tblocks[i].content}>// 顶部区块内容
<{$jieqi_lblocks[i].title}>// 左边区块标题
<{$jieqi_lblocks[i].content}>// 左边区块内容
<{$jieqi_ctblocks[i].title}>// 中上区块标题
<{$jieqi_ctblocks[i].content}>// 中上区块内容
<{$jieqi_clblocks[i].title}>// 中左区块标题
<{$jieqi_clblocks[i].content}>// 中左区块内容
<{$jieqi_crblocks[i].title}>// 中右区块标题
<{$jieqi_crblocks[i].content}>// 中右区块内容
<{$jieqi_cmblocks[i].title}>// 中中区块标题
<{$jieqi_cmblocks[i].content}>// 中中区块内容
<{$jieqi_cbblocks[i].title}>// 中下区块标题
<{$jieqi_cbblocks[i].content}>// 中下区块内容
<{$jieqi_rblocks[i].title}>// 右边区块标题
<{$jieqi_rblocks[i].content}>// 右边区块内容
<{$jieqi_bblocks[i].title}>// 底部区块标题
<{$jieqi_bblocks[i].content}>// 底部区块内容
为使更改后的模板生效,我们需要对相应的区块经行刷新 或者清理区块缓存。 modules/article/templates //文章系统模板 modules/article/te
模板制作方法
模板文件路径
JIEQI CMS 模板文件主要存在于以下几个目录中,更改相应的文件就能改变页面显示效果。注:为使更改后的模板生效,我们需要对相应的区块经行刷新 或者清理区块缓存。
modules/article/templates//文章系统模板
modules/article/templates/blocks//文章系统区块模板
modules/forum/templates//论坛系统模板
modules/forum/templates/blocks//论坛系统区块模板
templates//公用页面模板(例如用户档案)
templates/blocks//公用页面区块模板
themes/default//主要风格模板
【杰奇|杰奇模板详解】主要模板:
一般修改如下几个主要模板就能改变前台页面的大部分显示效果:
modules/article/templates/index.html// 目录页面
modules/article/templates/style.html// 章节内容
modules/article/templates/fulltext.html// 全文阅读
modules/article/templates/articleinfo.html// 书籍摘要页面
themes/default/theme.html// 动态页面公用模板
常用语法以及函数讲解
模板中标签的格式为{?XXX?},注意使用。
1、循环语句:
格式:{?section name=i loop=$var columns=1?}{?/section?}
说明:该语句以{?section name=i loop=$var columns=1?}开始,并以{?/section?}结束
举例:{?section name=i loop=$jieqi_cmblocks?}
……
{?/section?}
解释:上例中表示的是,如果中间下方的区块存在,则在此处循环显示
2、判断语句
格式:{?if ... ?}...{? else ?}...{?elseif?}...{?/if?}
说明:该语句为判断语句
举例:{?if $jieqi_cmblocks.title != ""?}
……
{?/if?}
解释:如果中间下方的区块的标题有内容,则显示这个区块的标题3、截取字符串方法
函数:1、truncate - 截取固定长度字符串,参数一(必要):截取后长度,参数二:附加字符串。
格式:eg:$var=123456789;模板里面调用函数: {?$var|truncate:5?} | {?$var|truncate:5:"......"?}
输出:12345 | 123......4、替换字符串
函数:str_replace - 字符串替换,参数一:查找的字符串,参数二:替换为字符串
格式:eg:$var=’http://www.3gzww.com‘;模板里面调用函数: {?$var|str_replace:"www":"demo"?}
输出: http://demo.3gzww.com5、处理时间函数
函数:date - 把数字类型的时间格式化成字符串,参数一:格式化字符串
格式:eg:$time=1198226131;模板里面调用函数: {?$time|date:"Y-m-d H:i:s"?}
输出:2007-12-21 16:35:316、专用于生成子目录名字的函数
函数:subdirectory - JIEQI CMS 里面专用于生成子目录名字的函数,针对数字的处理,无参数。输出格式类似 "/12",其中"/" 是表示开始一个子目录,"12"是子目录名字。
格式:eg:$id=3456;模板里面调用函数:/files/article/html{?$id|subdirectory?}/{$id?}/index.html
输出:/files/article/html/3/3456/index.html
【框架】
JIEQI CMS风格模板以框架的形式存在,无论是JIEQI CMS中的哪个模块,均使用到了该框架,该框架的文件夹为http://你的网站地址/theme/风格文件夹。该文件夹中需要包含五个html文件,theme.html、msgerr.html、msgwin、jumppage.html、msgbox.html,还有一个CSS文件。
theme.html:页面框架模板,适用整个系统,修改网站风格也主要是修改本文件。
jumppage.html:程序跳转页面模板,比如用户登录时候,那个跳转过渡的小窗口。
msgbox.html:内容提示方块模板,通常这个提示信息是指插入到其他页面的。
msgwin.html:内容提示页面模板,跟msgbox.html不同,这是一个完整的提示页面。
msgerr.html:错误信息提示模板,也是一个完整的提示页面。
style.css:通用的css,在theme.html里面调用的,也是整站通用。
二、小说连载系统
JIEQI的风格模板文件的保存地址为:http://你的网站地址/modules/article/templates和http://你的网站地址/modules/article/templates/blocks中,前者包含JIEQI需用的不会以区块形式出现的模板,比如小说信息页面、小说章节内容页面等,后者包含杰奇需要采用区块形式出现的文件,比如首页显示的总点击榜、总推荐榜等。下面对区块文件进行一个说明:
原创总排行:block_allauthorvisit.html
文章总排行:block_allvisit.html
总推荐榜: block_allvote.html
文章总排行:block_articlelist.html
原创更新: block_authorupdate.html
封面推荐: block_commend.html
原创日排行:block_dayauthorvisit.html
文章日排行:block_dayvisit.html
本日推荐: block_dayvote.html
收藏排行: block_goodnum.html
最近更新: block_lastupdate.html
转载更新: block_masterupdate.html
原创月排行:block_mouthauthorvisit.html
文章月排行:block_mouthvisit.html
本月推荐: block_mouthvote.html
我的原创文章:block_myarticles.html
block_newreview.html
block_newreviews.html
最新入库: block_postdate.html
最新书评: block_reviewslist.html
文章搜索: block_search.html
字数排行: block_size.html
分类阅读: block_sort.html
排行榜:block_toplist.html
本站推荐: block_toptime.html
我的转载文章:block_transarticles.html
原创周排行:block_weekauthorvisit.html
文章周排行:block_weekvisit.html
本周推荐: block_weekvote.html
作家工具箱:block_writerbox.html
【第二章 CSS文件说明】
杰奇整个框架使用的是http://你的网站地址/theme/风格文件夹/style.css,下面就默认CSS文件中的一些样式参数进行说明,在你设计风格的时候,如果希望采用默认的一样样式,那么请将默认CSS文件中的部分复制到你建立的CSS文件中,并在html文件中按照默认CSS文件的部分内容进行书写布局。
/* 基本样式 */
*- 清除默认样式
body- 页面主体
a- 链接
p- 段落
h1, h2, h3, h4, h5, h6 - 标题
img- 图像
div- 层
hr- 分割线
ul- 列表
li- 列表栏目=========================★★★★★============================
/* 表格样式 */
table- 默认表格
table.fix- 单元格里面内容比较宽时候隐藏超出部分,而不是把表格撑开导致变形
table.grid- 多行多列的表格
table.grid caption, .gridtop - 表格标题
table.grid th, .head - 表格第一行项目名称栏
table.grid td - 单元格样式=========================★★★★★============================
/*表格辅助样式*/
.title- 表格内列的栏目标题
.even- 偶数行/列
.odd- 奇数行/列
.foot- 表格末行
.bottom- 表格底部/* 表单样式 */
form- 默认表单
input- 默认输入框
.text- 单行文本
.textarea - 多行文本
.button- 按钮
.checkbox - 多选框
.radio- 单选框
.select- 下拉框=========================★★★★★============================
/* 布局样式 */
#wrapper- 总页面容器
#left- 左边列
#right- 右边列
#centers- 中间列(一共为三列时)
#centerm- 中间列(一共为二列时)
#centerl- 中间列(一共为一列时)
#content- 主体内容
.main- 整页宽度的内容容器
.m_top- 网页最顶部(通常放快速导航链接)
.m_head- 网页头部(通常包括网站LOGO和BANNER)
.h_logo- 网站LOGO
.h_banner- 网站BANNER
.h_link- BANNER旁边的链接
.m_menu- 菜单栏
.m_foot- 网页底部
.block- 区块容器
.blocktitle- 区块标题
.blockcontent - 区块内容
.blocknote- 区块底部修饰=========================★★★★★============================
/*常用样式*/
.ultop- 排行列表
.ulitem- 项目列表
.ulrow- 普通行
.ulcenter- 内容居中行
.ulmul- 多行多列
.fix, .lm- 内容超出容器时候隐藏超出部分
.fl- 靠左浮动
.fr- 靠右浮动
.cl- 清除左边
.cr- 清除右边
.cb- 清除两边
.tl- 文本居左
.tc- 文本居右
.tr- 文本居中
.more- “更多”链接=========================★★★★★============================
.c_navigation- 栏目导航
.c_title- 文章标题
.c_head- 文章头部
.c_content- 文章内容
.c_foot- 文章底部
.c_label- 属性标签
.c_value- 属性内容
.c_row- 文章列表里面的一条记录外框
.c_subject- 文章列表标题
.c_tag- 文章列表附加属性
.c_description - 文章列表里面的简介
.c_note- 文章列表里面备注或者相关链接=========================★★★★★============================
/*醒目效果*/
.hottext- 热点文字
.notetext- 注解文字
.errortext - 错误提示文字
a.hotlink- 热点链接
a.btnlink- 按钮样式链接 /*常用界面*/
.jieqiQuote - 引用框
.jieqiCode- 代码框
.jieqiNote- 注解框
.divbox- 带边框容器
.textbox- 文本框
.popbox- 提示框
#tips- 浮动消息提示框
.tablist- TAB标签
.tabcontent - TAB栏目对应的内容
.pages- 列表页面的分页外框
.pagelink- 列表页面的分页导航
img.avatar- 默认用户头像
#jieqi_menu - 下拉菜单
=========================★★★★★============================
第三章 【不使用系统框架制作首页】
在制作JIEQI首页之前,需要了解JIEQI CMS的一些标签的书写。尽管不使用系统框架,但这也是仅针对于站点首页而言,其它页面还是需要调用系统框架的,因此theme.html文件还是要重新设计,最好能和首页的风格相同,这样便于统一风格。
一、系统标签的书写
系统标签的书写方式为:
{? $标签名 ?}
,例如网站地址的标签为:{? $jieqi_url ?}。下面我将列举JIEQI CMS中常用的标签: jieqi_url- 本机URL的根路径(使用相对路径时候本变量是空的,用绝对路径时候是完整地址,如:3g中文网www.3gzww.com)
jieqi_rootpath- 网站根目录的物理路径,如:E:/web
jieqi_local_url- 本机完整的URL的根路径(跟jieqi_url区别是,使用相对路径时候本变量也是完整地址)
jieqi_main_url- 主服务器的URL地址
jieqi_user_url- 用户入口服务器的URL地址
jieqi_host- 网站地址里面的主域,如 www.3gzww.com
jieqi_charset- 当前页面编码,如gbk, big5
jieqi_version- 系统程序主版本号,如 1.50
jieqi_theme- 网站当前风格名称,如 jieqidiv
jieqi_themeurl- 网站当前风格的yrl,如www.3gzww.com/themes/jiqidiv
jieqi_time- 当前时间,int型
jieqi_sitename- 网站名称
jieqi_pagetitle- 网页title
jieqi_email- 网站联系Email
meta_keywords- 网站meta关键字
meta_description- 网站meta描述
meta_copyright- 网站meta版权声明
jieqi_banner- 网站banner
jieqi_head- 网页和之间附加代码
jieqi_top_bar- 网页顶部通栏代码
jieqi_bottom_bar- 网页底部通栏代码
jieqi_menu- 程序生成的下拉菜单赋值成这个变量,在较老版本使用,新版里面菜单直接在theme.html里面修改
jieqi_userid- 用户ID
jieqi_username- 用户昵称(用户未设置昵称时候即登录账号)
jieqi_useruname- 用户名(登录账号)
jieqi_group- 用户组别数字
jieqi_groupname- 用户组别名称
jieqi_score- 用户积分
jieqi_experience- 用户经验
jieqi_honor- 用户头衔
jieqi_vip- 用户vip标志 0-非vip,1-vip会员
jieqi_egold- 用户虚拟币金额
jieqi_avatar- 用户头像图片类型标志 0-无头像图 1-gif, 2-jpg, 3-jpeg, 4-png, 5-bmp
jieqi_newmessage- 新的站内短信标志,0-无新消息 1-有新消息
jieqi_userstatus- 用户状态 1-未登陆 2-管理员 3-登录用户
二、首页文件的书写
JIEQI CMS是经过Zend加密的,因此我们不能直接修改index.php,因此要想使用自己的首页风格,必须建立一个全新的index.php。制作方法如下:
1、对系统原来的index.php进行备份或者改名;
2、打开记事本、EmEditor或者Dreamweaver,在文件中写入如下信息,并保存为index.php,注意,如果采用记事本或者EmEditor,那么在保存的时候“保存类型”请选择“全部文件(.)”:
define('JIEQI_MODULE_NAME', 'system');
//定义本页面属于哪个模块
require_once('global.php');
//包含通用程序,每个页面必须包含
jieqi_getconfigs(JIEQI_MODULE_NAME, 'blocks');
//包含区块参数,如果需要在页面调用区块的话
//本函数中,JIEQI_MODULE表示模块名,blocks表示区块配置文件名,配置文件皆在 /configs 目录下,如上例对应的文件是/configs/blocks.php
$jieqi_page_template=JIEQI_ROOT_PATH.'/templates/custom.html';
//设置该页面的模板文件,存在地址和文件名称请根据自己实际的情况进行设置
include_once(JIEQI_ROOT_PATH.'/header.php');
//包含页头处理
$jieqiTpl->assign('jieqi_indexpage',1);
//设置首页标志,不是首页请注释本语句,便于模板里面可以判断,给模板其他参数赋值也用这个方法
include_once(JIEQI_ROOT_PATH.'/footer.php');
//包含页尾处理
?>
3、制作custom.html文件
制作custom.html的方法参见其它网页制作方面的书籍,无论是采用表格布局也好,DIV 布局也好,都可以,但是请注意,因为不采用系统框架,所以在首页中所调用的区块所采用的书写方式有所不同。调用某一个区块的标题,采用的是:{? jieqi_pageblocks['区块序号']['区块标题或区块内容'] ?},假设调用的是第10个区块的标题,则书写为:{?jieqi_pageblocks['10']['title'] ?},如果调用的是第11个区块的内容,则书写为:{? $jieqi_pageblocks[‘11’][‘content’] ?}。
制作完成之后,将文件保存到与index.php中所书写的地址
注意:调用区块书写好以后,一定要到网站后台的区块管理中将你所要在首页显示的区块设置为显示状态,否则还是不会显示的
4、制作风格所需的theme.html、jumppage.html、msgbox.html、msgerr.html、msgwin.html文件,制作方法同样参照网页设计方面的书籍,标签的书写请参照默认风格的对应文件。
完成以上四步之后,不使用系统框架的首页就制作完成了,而且能够让整个网站的风格相对统一起来。
文章由资料网http://www.ziliao999.com编辑整理
推荐阅读
- opencv|opencv C++模板匹配的简单实现
- Java|Java OpenCV图像处理之SIFT角点检测详解
- C语言浮点函数中的modf和fmod详解
- web网页模板|如此优秀的JS轮播图,写完老师都沉默了
- 虚拟DOM-Diff算法详解
- LSTM网络层详解及其应用实例
- OC:|OC: WKWebView详解
- vue中的条件判断详解v-if|vue中的条件判断详解v-if v-else v-else-if v-show
- Vue组件之事件总线和消息发布订阅详解
- 通过复盘快速成长(附模板)