关于手册

熟悉PbootCMS手册是使用本程序开发模板的前提,虽然我们尽可能把所有标签做到简单到想哭,但是还是需要您静下心来好好看看!

关于我们

PbootCMS是翱云科技开发的全新内核的PHP开源企业网站开发建设管理系统,系统以高效、简洁、强悍为开发目标,能够满足各类企业网站建设开发的需要。

程序下载

1、你可以到码云代码托管平台下载

2、当然你也可以到技术交流群(137083872)群文件下载

star fork

在线演示

点击我浏览(注意:只能看前台,后台不允许登陆)

快速部署

系统自带完整后台以及一套响应式模板,默认采用Sqlite数据库,放入PHP(5.3+)空间即可直接使用

数据库选择

默认采用Sqlite数据库,不需要做导入和配置操作,如果需要启用Mysql版本,请导入数据库文件(/static/backup/sql/xxx.sql)并修改数据库连接文件信息(/config/database.php)

后台访问

系统后台默认访问路径:http://域名/admin.php 账号:admin 密码:123456

技术交流群

官方网站:www.pbootcms.com

技术交流群:137083872

赞助开源

星梦一直秉承大道至简分享便可改变世界的理念,坚持做最简约的PbootCMS开源软件!您的每一份帮助都将支持PbootCMS做的更好,走的更远!我们一直在坚持不懈地努力,并尽可能让PbootCMS完全开源免费,您的帮助将使我们更有动力和信心^_^!

您可以在码云代码托管平台上赞助我们,也可以通过微信或支付宝赞助!

公共标签

1、模板文件嵌套引用

{include file=***.html}

使用说明:

可以嵌套使用,如:index.html 嵌套一个head.html,同时head.html中嵌套comm.html

支持使用子目录,如:{include file=comm/***.html}

2、时间格式化标签

style=*

如:内容列表时间格式化[list:date style=Y-m-d]、内容详情页时间格式化{content:date style=Y-m-d}

使用说明:

时间格式化标签和PHP时间格式化语法一致,分别用不同字母代替,中间可以穿插任意字符,如:Y-m-d、Y/m/d、Y年m月d日等等

注意:Y代表完整年份,y代表简化年份,m代表月份,d代表日,H代表小时,i代表分,s代表秒,如完整时间:style='Y-m-d H:i:s',更多请参考PHP时间格式化语法 ,参考链接 :http://php.net/manual/zh/function.date.php

3、HTML去除标签

drophtml=1

如:内容列表内容[list:content drophtml=1]、内容详情页内容{content:content drophtml=1}

使用说明:

一般在首页等特殊位置需要调取正文一段纯文本时使用,这时一般会配合下面的内容截取标签一起使用

4、内容截取标签

长度截取使用len=* 或 lencn=* ,第二个将避免中英文不统一问题,一个英文字符算半个字

如:内容列表标题截取[list:title len=10]、内容详情页时间格式化{content:title len=10}

substr=x,y 截取一段

substr截取字符串长度,传递两个数字,第一个为起始位置,第二个为截取长度,如只有一个数字则截取此数字起后面全部

使用说明:

使用内容截取时要注意如果是html内容需要先去除html再截取,否则可能导致html错位,如:[list:content drophtml=1 len=50]

5、其它格式化标签

dropblank=1 ,去除空白字符,如换行符、制表符等

decode=1 解码数据html字符,如果等于0.则不解码(包括源码已经解码的),此标签一般不使用

decimal=* 小数点位数

unit=* 容量单位,可以是kb,mb,gb,tb,pb,eb

6、自定义标签

{label:***}

使用说明:

在后台”全局配置>定制标签“中定义,前台使用对应名字进行调用即可

7、面包屑标签

{pboot:position}

参数说明:

separator=* 分隔符,非必填,默认为>>

separatoricon=* 分割图标,非必填,如使用图标字体:separatoricon='fa fa-angle-double-right'

indextext=* 首页文本,非必填,默认为"首页"

indexicon=* 首页图标,非必填,如使用图标字体:indexicon='fa fa-home'

8、当前网址

{pboot:httpurl}

使用说明:

自适应获取当前访问网址,主要用于需要使用网站路径前缀的情况,如输出:https://www.pbootcms.com

9、当前页面

{pboot:pageurl}

使用说明:

自适应获取当前访问页面完整地址

10、二维码生成标签

{pboot:qrcode string=***}

使用说明:

用于生成对应文本的二维码图片,可用于产品列表页或详情页为每个产品生成二维码 :{pboot:qrcode string={pboot:httpurl}{content:link}}或{pboot:qrcode string={pboot:pageurl}

11、程序运行时间

{pboot:runtime\}

使用说明:

用于输出页面运行时间/缓存时间,使用时请将反斜杠去掉。

12、留言验证码开关状态

{pboot:checkcodestatus}

使用说明:

用于判断留言验证码是否开启状态,方便页面控制验证码图标的显示。

13、站点地图

http://domain/index.php/sitemap

http://domain/index.php/sitemap.xml

使用说明:

系统使用动态站点地图,不需要生成,访问地址即为实时地图,输出格式为xml,当然你也可以打开后另存为一个地图文件。

如果你已经开启伪静态,那么地址中将可以不含有index.php。

站点信息标签

适用范围:全站任意地方均可使用

标签作用:用于调取网站的基本配置信息,对应后台的“基础内容>站点信息”

{pboot:siteindex} 站点入口地址,用于地址前置引用
{pboot:sitepath} 站点路径,根目录时值为空
{pboot:sitelanguage} 站点语言
{pboot:sitetitle} 站点标题
{pboot:sitesubtitle} 站点副标题
{pboot:sitedomain} 站点域名
{pboot:sitelogo} 站点logo
{pboot:sitekeywords} 站点关键字
{pboot:sitedescription} 站点描述
{pboot:siteicp} 站点备案信息
{pboot:sitetplpath} 站点模板路径
{pboot:sitestatistical} 站点统计
{pboot:sitecopyright} 站点版权

V1.1.6+新增如下标签,推荐使用

{pboot:pagetitle} 根据不同页面自动显示标题

{pboot:pagekeywords} 根据不同页面自动显示关键字

{pboot:pagedescription} 根据不同页面自动显示描述

公司信息标签

适用范围:全站任意地方均可使用

标签作用:用于调取网站与公司相关的信息,对应后台的“基础内容>公司信息”

{pboot:companyname}公司名称
{pboot:companyaddress}公司地址
{pboot:companypostcode} 邮政编码
{pboot:companycontact} 联系人
{pboot:companymobile} 联系手机
{pboot:companyphone} 联系电话
{pboot:companyfax} 传真号码
{pboot:companyemail} 联系邮箱
{pboot:companyqq} QQ号码
{pboot:companyweixin} 微信图标
{pboot:companyblicense} 营业执照号
{pboot:companyother} 其它信息

当前栏目标签

适用范围:在列表页或详情页使用

标签作用:用于输出当前栏目的相关信息

{sort:tcode}当前栏目的顶级栏目编码
{sort:topname}当前栏目的顶级栏目名称
{sort:toplink}当前栏目的顶级栏目链接
{sort:pcode}当前栏目的父栏目编码
{sort:parentname}当前栏目的父栏目名称
{sort:parentlink}当前栏目的父栏目链接
{sort:scode}当前栏目编码
{sort:name}栏目名称
{sort:subname}栏目副名称
{sort:link}栏目链接
{sort:type}栏目类型,1单页、2列表
{sort:outlink}后台设置的跳转链接
{sort:listtpl}列表页模板
{sort:contenttpl}详情页模板
{sort:ico}栏目缩略图
{sort:pic}栏目大图
{sort:title}栏目标题(V1.3+)
{sort:keywords}栏目关键字
{sort:description}栏目描述

指定栏目标签

适用范围:全站任意地方均可使用

标签作用:用于调导航菜单栏目列表,对应后台的“基础内容>内容栏目”

1、指定栏目列表

{pboot:sort scode=*}

<a href= "[sort:link]">[sort:name]</a>

{/pboot:sort}

控制参数:

scode=* 栏目编码,必填,用于控制输出的栏目,可以同时输出多个(V1.1.6+),使用逗号隔开即可,如:1,2,3

scode={sort:pcode} 可用于输出当前栏目父菜单的信息

scode={sort:scode} 可用于输出当前栏目的信息

scode={sort:tcode} 可用于输出当前栏目顶级菜单的信息

2、可使用的列表标签

[sort:n]序号,从0开始
[sort:i]序号,从1开始
[sort:pcode]父栏目编码
[sort:parentname]父栏目名称
[sort:scode]当前栏目编码
[sort:name]栏目名称
[sort:subname]栏目副名称
[sort:link]栏目链接
[sort:type]栏目类型,1单页、2列表
[sort:outlink]后台设置的跳转链接
[sort:listtpl]列表页模板
[sort:contenttpl]详情页模板
[sort:ico]栏目缩略图
[sort:pic]栏目大图
[sort:title]栏目标题(V1.3+)
[sort:keywords]栏目关键字
[sort:description]栏目描述
[sort:rows]栏目下内容数量(V1.3+)
[sort:toprows]顶级栏目下内容数量(V1.3+)
[sort:parentrows]父栏目下内容数量(V1.3+)

内容列表标签

适用范围:指定栏目编码时全站可用,适用当前列表

标签作用:用于调取指定栏目的内容列表或自动当前列表

1、当前栏目内容列表

{pboot:list}

<a href= "[list:link]">[list:title]</a>

{/pboot:list}

控制参数:

num=* 每页数量,非必填,用于控制分页大小

order=* 排序方式,非必填,用于输出内容的排序方式,可选:date、sorting、istop、isrecommend、isheadline、visits、likes、oppose等字段,其中sorting为按后台填写的排序,122版本开始支持自定义模式,如:order='date desc,id desc' 、order='sorting desc,id desc'

filter=*|x,y 数据过滤,非必填,用于对列表内容进行过滤筛选,如:filter=title|ASP,PHP 只显示标题含有ASP和PHP的内容,如果需要只显示推荐,可使用如下过滤参数: filter=isrecommend|1 (新版本用下面的方式更好)

isico=*、ispics=*、istop=*、isrecommend=*、isheadline=* 用于对数据进行特殊筛选,可选值1和0,非必填,比如只调取推荐内容:isrecommend=1

tags=x,y tags方式数据过滤,非必填,用于对列表内容进行过滤筛选,如:tags='ASP,PHP',则为含有asp或php标签的内容

start=* 起始数据(V1.3.2+),非必填,用于需要从第几条开始

2、指定栏目内容列表

{pboot:list scode=*}

<a href= "[list:link]">[list:title]</a>

{/pboot:list}

控制参数:

scode=* 栏目编码,必填,用于指定需要调取的栏目编码,读取的内容会同时包含该栏目下子菜单的内容,支持多个栏目如:1,2,3

page=* 是否分页,非必填,用于列表是否执行分页,可设置1或0,本功能适合首页分页等场景

start=* 起始数据(V1.3.2+),非必填,用于需要从第几条开始

其余控制参数同上面当前栏目内容列表

3、可使用的列表标签

[list:n] 计数0开始
[list:i] 计数1开始
[list:id] 编号
[list:scode] 分类编码
[list:subscode] 副分类编码
[list:sortname] 分类名称
[list:subsortname] 副分类名称
[list:sortlink] 分类链接
[list:subsortlink] 副分类链接
[list:title] 标题
[list:titlecolor] 标题颜色
[list:subtitle] 副标题
[list:tags] 直接输出tags
[list:author] 作者
[list:source] 来源
[list:link] 链接
[list:outlink] 外部链接
[list:date] 发布日期
[list:ico] 缩略图
[list:pics] 多图
[list:content] 内容
[list:enclosure] 附件
[list:enclosuresize] 附件大小
[list:keywords] 关键词
[list:description] 描述
[list:istop] 是否置顶
[list:isrecommend] 是否推荐
[list:isheadline] 是否头条
[list:visits] 访问数量
[list:likes] 点赞数量
[list:oppose] 反对数量
[list:likeslink] 点赞链接
[list:opposelink] 反对链接
[list:ext_***] 调取扩展字段内容

分页条标签

适用范围:分页条标签适用所有执行了分页的页面

标签作用:用于输出分页代码

1、分页条标签

{page:bar} 系统内置的完整分页条
{page:current} 当前页码
{page:count} 总页数
{page:rows} 总数据行数
{page:index}首页链接
{page:pre} 前一页链接
{page:next}下一页链接
{page:last}尾页链接
{page:status} 分页状态信息
{page:numbar} 数字条,数字带class名称为page-num,当前的同时还带page-num-current
{page:selectbar} 下拉选择条

2、分页条自带的HTML样式class名称

状态:page-status

首页:page-index

上一页:page-pre

下一页:page-next

尾页:page-last

数字条:page-numbar ,数字条下面的数字:page-num ,如果是当前页,那么该数字还同时带有:page-num-current

下拉条:page-select (默认条已经不显示)

内容详情页标签

适用范围:在内容详情页使用,包括单页和列表点击后的详情页

标签作用:用于输出当前内容的相关信息

{content:id} 编号
{content:scode} 分类编码
{content:subscode}副分类编码
{content:sortname}分类名称
{content:subsortname} 副分类名称
{content:sortlink}分类链接
{content:subsortlink}副分类链接
{content:title} 标题
{content:titlecolor} 标题颜色
{content:subtitle}副标题
{content:author}作者
{content:source} 来源
{content:link} 链接
{content:outlink} 外部链接
{content:date} 发布日期
{content:ico} 缩略图
{content:pics} 多图
{content:content} 内容
{content:tags} 直接输出tags
{content:enclosure} 附件
{content:enclosuresize} 附件大小
{content:keywords} 关键词
{content:description} 描述
{content:istop} 是否置顶
{content:isrecommend} 是否推荐
{content:isheadline} 是否头条
{content:visits} 访问数量
{content:likes} 点赞数量
{content:oppose} 反对数量
{content:likeslink} 点赞链接
{content:opposelink} 反对链接
{content:ext_***} 调取扩展字段内容
{content:precontent} 上一篇内容(带链接)
{content:nextcontent}下一篇内容(带链接)
{content:prelink} 上一篇内容链接
{content:nextlink}下一篇内容链接
{content:pretitle} 上一篇内容标题
{content:nexttitle}下一篇内容标题
{content:nexttitle notext='no more'}设置“没有了”文本,设置参数时如果带空格,需要用单引号

指定内容标签

适用范围:全站任意地方均可使用

标签作用:用于调取指定id的内容

1、调取指定内容

{pboot:content id=*}

<a href= "[content:link]">[content:title]</a>

{/pboot:content}

控制参数:

id=* 内容的ID号,必填,用于控制输出的内容,适用单页或列表页内容

scode=* 单页的分类编码,必填,用于控制输出单页的内容,只适用单页内容

2、可使用的内容标签

[content:id] 编号
[content:scode] 分类编码
[content:subscode]副分类编码
[content:sortname]分类名称
[content:subsortname] 副分类名称
[content:sortlink]分类链接
[content:subsortlink] 副分类链接
[content:title] 标题
[content:titlecolor] 标题颜色
[content:subtitle]副标题
[content:author] 作者
[content:source] 来源
[content:link] 链接
[content:outlink] 外部链接
[content:date] 发布日期
[content:ico] 缩略图
[content:pics] 图集
[content:content] 内容
[content:tags] 直接输出tags
[content:enclosure] 附件
[content:enclosuresize] 附件大小
[content:keywords] 关键词
[content:description] 描述
[content:istop] 是否置顶
[content:isrecommend] 是否推荐
[content:isheadline] 是否头条
[content:visits] 访问数量
[content:likes] 点赞数量
[content:oppose] 反对数量
[content:likeslink] 点赞链接
[content:opposelink] 反对链接
[content:ext_***] 调取扩展字段内容

指定内容多图遍历

适用范围:全站任意地方均可使用

标签作用:用于依次输出指定内容的多张图片

1、指定内容多图遍历

{pboot:pics id=* num=*}

<img src="[pics:src]">

{/pboot:pics}

控制参数:

id=* 内容ID号,必填,用于控制需要输出图片的内容,也可使用id={content:id}、id=[list:id]自适应当前内容及列表

num=* 数量,非必填,用于控制需要输出图片得数量

2、可使用的多图标签

[pics:n] 序号从0开始
[pics:i] 序号从1开始
[pics:src] 图片地址

指定内容多选字段遍历

适用范围:全站任意地方均可使用

标签作用:用于依次输出指定内容的多选值,也可用于遍历逗号隔开的字段,如tag

1、指定内容多选遍历

{pboot:checkbox id=* field=*}

[checkbox:text]

{/pboot:checkbox}

控制参数:

id=* 内容ID号,必填,用于控制需遍历多选的内容,也可使用id={content:id}、id=[list:id]自适应当前内容及列表

field=* 字段,必填,用于控制需要遍历的字段,如扩展字段产品特色:ext_cpts

2、可使用的多图标签

[checkbox:n] 序号从0开始
[checkbox:i] 序号从1开始
[checkbox:text] 文本

幻灯片轮播图标签

适用范围:全站任意地方均可使用

标签作用:用于依次输出指定分组的幻灯片图片

1、幻灯片轮播图列表

{pboot:slide gid=* num=*}

<img src="[slide:src]">

{/pboot:slide}

控制参数:

gid=* 分组,必填,用于控制需要输出的幻灯片分组

num=* 数量,非必填,用于控制需要输出的数量,默认为5个

2、可使用的列表标签

[slide:n] 序号从0开始
[slide:i] 序号从1开始
[slide:id] 编号
[slide:src] 图片地址
[slide:link] 链接地址
[slide:title] 标题
[slide:subtitle] 副标题

内容tags标签调用

适用范围:全站任意地方均可使用

1、调用指定栏目下的内容tags

{pboot:tags scode=*,*}

<a href="[tags:link]">[tags:text]</a>

{/pboot:tags}

控制参数:

scode=* 栏目编码,用于控制需要输出内容的栏目编码,多个用逗号隔开

num=* 数量,非必填,用于控制需要输出的数量

2、调用指定内容的tags

{pboot:tags id=*}

<a href="[tags:link]">[tags:text]</a>

{/pboot:tags}

控制参数:

id=* 内容ID,用于控制需要输出的内容ID,如果与列表标签嵌套可以用id=[list:id]

num=* 数量,非必填,用于控制需要输出的数量

3、使用tags显示相似内容列表

{pboot:list scode=* tags='x,y'}

<p><a href="[list:link]">[list:title]</a></p>

{/pboot:list}

4、可使用的列表标签

[tags:n] 序号从0开始
[tags:i] 序号从1开始
[tags:link] 链接地址
[tags:text] tags名称

留言板标签

适用范围:全站任意地方均可使用

标签作用:用于用户提交留言和调取留言记录

1、留言提交表单

<form action="{pboot:msgaction}" method="post">

    联系人:<input type="text" name="contacts" >

    手机:<input type="text" name="mobile" >

    内容:<input type="text" name="content" >

    验证码:<input type="text" name="checkcode" ><img title="点击刷新" src="{pboot:checkcode}" onclick="this.src='{pboot:checkcode}?'+Math.round(Math.random()*10);" />

    <button type="submit">提交</button>

</form>

标签说明:

{pboot:msgaction} 为留言表单接收地址

{pboot:checkcode} 为验证码图片地址

2、留言记录列表

{pboot:message num=*}

    <p>[message:contacts]</p>

    <p>[message:content]</p>

{/pboot:message}

控制参数:

num=* 数量,非必填,为调取的留言分页大小

page=* 是否分页1或0,非必填,用于关闭分页

3、留言记录列表可用标签

[message:n] 序号从0开始
[message:i] 序号从1开始
[message:contacts] 联系人
[message:mobile] 手机
[message:content] 内容
[message:recontent] 回复内容
[message:ip] 用户IP
[message:os] 用户操作系统
[message:bs] 用户浏览器
[message:askdate] 留言时间
[message:replydate] 回复时间
[message:***] 自定义的其它字段

自定义表单标签

适用范围:全站任意地方均可使用

标签作用:用于用户提交表单和调取表单记录

1、使用步骤

  • 1)到后台”扩展内容>自定义表单“中添加表单
  • 2)对新增的表单添加字段
  • 3)到前台模板中新增form表单

2、提交表单示例

<form action="{pboot:form fcode=*}" method="post">

    姓名:<input type="text" name="name" >

    公司:<input type="text" name="company" >

    职位:<input type="text" name="position" >

    <button type="submit">提交</button>

</form>

标签说明:

{pboot:form fcode=*} 为表单接收地址,fcode对应后台接收表单的编码

注意:此处与留言板的提交地址不可混淆,留言使用专用地址,其余自定义表单则按照此处规则定义。

3、表单记录列表

{pboot:formlist fcode=* num=*}

    <p>姓名:[form:name]</p>

    <p>公司:[form:company]</p>

    <p>职位:[form:position]</p>

{/pboot:formlist}

控制参数:

fcode=* 表单编码,必填,用于控制调取的表单

num=* 数量,非必填,用于控制调取的记录分页大小

page=* 是否分页1或0,非必填,用于关闭分页

4、表单记录列表可用标签

[form:n] 序号从0开始
[form:i] 序号从1开始
[form:date] 提交时间
[form:***] 自定义的其它字段

多条件筛选标签

适用范围:内容列表页使用,其实也可以用在首页等

标签作用:用于对内容列表进行筛选

1、使用步骤

  • 1)到后台对模型添加扩展字段,字段类型选择单选或多选,同时填写单选或多选的可选内容;
  • 2)添加对应模型的栏目,并对栏目添加内容;
  • 3)到前台模板中调用相关扩展字段进行输出,具体见下面的例子。

2、筛选调用标签

1)全部标签

{pboot:selectall field=* text=* class=* active=*}

控制参数:

field=* 筛选的字段,必填,用于控制调取的筛选字段名称

text=* 显示文字,非必填,用于控制显示的文字,默认显示”全部“

class=* 非选中时样式,非必填,用于设置为文字非选中时的class常规样式

active=* 选中时样式,非必填,用于设置为文字选中时的class高亮样式

2)筛选值标签

{pboot:select field=*}

<a href= "[select:link]">[select:value]</a>

{/pboot:select}

控制参数:

field=* 筛选的字段,必填,用于控制调取的筛选字段名称

一般情况下我们会有多个字段,那么只要重复上面的代码即可。

选中值高亮处理:{pboot:if('[select:value]'=='[select:current]')}class= "active" {/pboot:if}

2)筛选可用标签

[select:i] 序号
[select:current] 当前选中值
[select:link] 链接
[select:value] 筛选值

3、多条件筛选示例

<p>

类型:{pboot:selectall field=ext_leixing text=全部 class='btn btn-light' active='btnbtn-info'} |

{pboot:select field=ext_leixing}

{pboot:if([select:i]>1)}|{/pboot:if}

<a href="[select:link]"{pboot:if('[select:value]'=='[select:current]')}class="active" {/pboot:if}>[select:value]</a>

{/pboot:select}

</p>

<p>

颜色:{pboot:selectall field=ext_yanse text=全部 class='btn btn-light' active='btnbtn-info'} |

{pboot:select field=ext_yanse}

{pboot:if([select:i]>1)}|{/pboot:if}

<a href="[select:link]"{pboot:if('[select:value]'=='[select:current]')}class="active" {/pboot:if}>[select:value]</a>

{/pboot:select}

</p>

多语言/区域建站

标签作用:用于使用同一个后台建立多国语言网站或多区域网站

1、使用步骤

  • 1)在后台"系统管理>数据区域"添加相应的区域,具体参考默认区域;
  • 2)将多语言的模板放入模板目录,不同语言的模板均放在template目录下;
  • 3)在后台选择语言切换到不同语言,分别设置:站点信息(注意选择模板)、公司信息、栏目信息、添加内容等;
  • 4)在不同模板中添加多语言切换按钮。

2、多语言切换按钮

<a href="{pboot:lgpath}?lg=cn">切换中文</a>

<a href="{pboot:lgpath}?lg=en">切换英文</a>

如何判断当前语言并高亮?

在按钮上添加判断语句:{pboot:if('{pboot:sitelanguage}'=='cn')}class="active"{/pboot:if}

IF条件语句使用

标签作用:用于根据条件输出不同内容

1、IF语句格式

{pboot:if('a'=='b')}

  内容1

{else}

  内容2

{/pboot:if}

使用提示:

对于非数字类的条件均为字符串类型,请加上引号,如:{pboot:if('[list:author]'=='admin')},但是数字类的可以不加:{pboot:if([list:i]==1)}

如果条件有多个,可以按照PHP的语法进行运算,如下:

条件并列:{pboot:if('[list:author]'=='admin' && [list:i]==1)}

条件或:{pboot:if('[list:author]'=='admin' || [list:i]==1)}

条件求余:{pboot:if([list:i]%2==0)},等于0偶数,等于1奇数

2、IF语句嵌套

{pboot:if('a'=='b')}

  {pboot:2if('a'=='c')}

    内容1

  {2else}

    内容2

  {/pboot:2if}

{else}

  内容3

{/pboot:if}

lopp循环语句使用

标签作用:用于根据循环输出一段内容

1、Loop语句格式

{pboot:loop start=* end=*}

  <p>这是第[loop:i]次,索引号为[loop:index]</p>

{/pboot:loop}

控制参数:

start=* 起始数字,默认1开始

end=* 结束数字,必填

API接口列表

标签作用:用于远程调取系统数据。

使用说明

  • 1)请先到后台进行API相关参数配置,强烈建议启用强制认证;
  • 2)客户端发起请求必须包含appid(认证用户)、timestamp(时间戳)、signature(签名)三个参数
  • 3)签名参数signature通过appid、secret、timestamp三个值连接为一个字符串,然后进行双层md5加密生成;

站内使用Ajax获取数据示例:

<script>

$(document).ready(function (e) {

  var url='/api.php/cms/site';

  $.ajax({

    type: 'POST',

    url: url,

    dataType: 'json',

    data: {

      appid: '{pboot:appid}',

      timestamp: '{pboot:timestamp}',

      signature: '{pboot:signature}'

     },

    success: function (response, status) {

      if(response.code){

        //获取数据成功

        alert(response.data.title);

      }else{

        //返回错误数据

        alert(response.data);

      }

    },

    error:function(xhr,status,error){

      //返回数据异常

      alert('返回数据异常!');

    }

  });

});

</script>

此处使用了三个站内标签:{pboot:appid} 认证用户名、{pboot:timestamp} 时间戳、{pboot:signature} 认证签名

1、网站信息接口

http://IP/api.php/cms/site

http://IP/api.php/cms/site/name/* 单个调用

2、公司信息接口

http://IP/api.php/cms/company

http://IP/api.php/cms/company/name/* 单个调用

3、自定义标签接口

http://IP/api.php/cms/label

http://IP/api.php/cms/label/name/* 单个调用

4、栏目列表树接口

http://IP/api.php/cms/nav

http://IP/api.php/cms/nav/scode/* 获取指定分类的子类

5、当前栏目位置接口

http://IP/api.php/cms/position/scode/* 此处传递当前栏目scode值

6、指定分类信息接口

http://IP/api.php/cms/sort/scode/* 此处传递需要调用栏目的scode值

7、指定内容多图接口

http://IP/api.php/cms/pics/id/* 此处传递内容ID值

8、幻灯片接口

http://IP/api.php/cms/slide/gid/*/num/* 此处传递分组gid及调取的数量num值,默认num为5

9、友情链接接口

http://IP/api.php/cms/link/gid/*/num/* 此处传递分组gid及调取的数量num值,默认num为10

10、指定内容列表接口

http://IP/api.php/list/* 此处传递需要调用的栏目scode

http://IP/api.php/list/*/page/2 调取第二页,如果数据已获取完,返回类似{"code":0,"data":"已经到底了!","rowtotal":"5"}

11、指定内容详情接口

http://IP/api.php/content/* 传递需要调用的内容ID(单页一样适用)

12、指定单页详情接口

http://IP/api.php/about/* 传递需要调用的单页scode

13、搜索内容接口

http://IP/api.php/cms/search 建议使用POST提交,keyword传递搜索关键字单条件搜索

同时支持传递num/*参数控制数量,传递order/* 控制排序方式,建议POST方式

可传递参数 field指定字段,多个用|隔开;

可传递参数 scode指定分类,多个用逗号隔开;

可传递参数 fuzzy等于0关闭模糊匹配,另外也可使用多数据库字段名称传递值来多条件搜索

14、留言提交接口

http://IP/api.php/cms/addmsg 要求POST提交,传递的字段同后台自定义的留言字段

15、留言内容接口

http://IP/api.php/cms/msg/num/* 传递num分页大小

http://IP/api.php/cms/msg/num/*/page/2 调取第二页

16、表单提交接口

http://IP/api.php/cms/addform/fcode/* 要求POST提交,fcode为表单编码,传递的字段同后台自定义的字段

17、表单数据读取接口

http://IP/api.php/cms/form/fcode/* 传递fcode表单编码

http://IP/api.php/cms/form/fcode/*/num/*/page/* num控制条数,page控制页码

温馨提示:

以上接口对于多语言(区域)的情况,请地址中附加acode参数指定语言,否则调用默认语言,如:http://IP/api.php/cms/site/acode/en

自定义路由

标签作用:用于自定义地址路由规则,美化URL地址。

1、单页面路由格式

'home/*' => 'home/about/index/scode/*'

例如"关于我们"页面:'home/about-us' => 'home/about/index/scode/1'

使用说明:

'home/*' 美化后的访问地址,例如上面例子访问地址会变为:http://域名/about-us.html

'home/about/index/scode/*' 为系统路由路径,此时星号可以是栏目的编码,如:关于我们的编码1,当然也可以是你在后台自定义的栏目地址名称

温馨提示:自定义中about为保留关键字,不要使用。

2、列表页路由格式

'home/*' => 'home/list/index/scode/*'

例如"新闻中心"页面:'home/news' => 'home/list/index/scode/2'

使用说明:

'home/*' 美化后的访问地址,例如上面的示例访问地址会变为:http://域名/news.html

'home/list/index/scode/*' 为系统路由路径,此时星号可以是栏目的编码,如:新闻中心的编码2,当然也可以是你在后台自定义的栏目地址名称

3、详情页路由格式

'home/*' => 'home/content/index/id/*'

例如某篇新闻页面:'home/test' => 'home/content/index/id/10'

使用说明:

'home/*' 美化后的访问地址,例如上面的示例访问地址会变为:http://域名/test.html

'home/content/index/id/*' 为系统路由路径,此时星号为内容的ID,当然也可以是你在后台自定义的内容地址名称

伪静态配置

标签作用:配置程序伪静态后URL中将不再包含index.php,整个地址更美观

1、IIS环境(IIS6的环境自行百度):

1)安装rewrite组件,如果使用空间一般空间商默认已经安装;

2)到后台配置参数中开启伪静态开关(老版本直接修改程序config/config.php文件url_type=2);

3)在站点目录建立web.config文件(老版本根目录下默认已有,去除后缀bak即可,新版本到rewrite目录下拷贝规则),手动建立的话规则如下:

<rewrite>

  <rules>

    <rule name="reIndex" stopProcessing="true">

      <match url="^(.*)$" ignoreCase="true" />

      <conditions logicalGrouping="MatchAll">

        <add input="REQUEST_FILENAME" matchType="IsDirectory" negate="true" />

        <add input="REQUEST_FILENAME" matchType="IsFile" negate="true" />

      </conditions>

      <action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" />

    </rule>

  </rules>

</rewrite>

2、Apache环境

1)开启Apache重写模块,具体请百度,如果使用空间一般空间商默认已经开启;

2)到后台配置参数中开启伪静态开关(老版本直接修改程序config/config.php文件url_type=2);

3)在站点目录建立.htaccess文件(老版本根目录下默认已有,新版本到rewrite目录下拷贝规则),内容如下:

<IfModule mod_rewrite.c>

  Options +FollowSymlinks

  RewriteEngine On

  RewriteCond %REQUEST_FILENAME !-d

  RewriteCond %REQUEST_FILENAME !-f

  #如果页面出现"No input file specified." 请注释第一条,启用第二条

  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

  #RewriteRule ^(.*)$ index.php [E=PATH_INFO:$1,QSA,PT,L]

</IfModule>

2、Nginx环境

1、到后台配置参数中开启伪静态(老版本直接修改程序config/config.php文件url_type=2);

2、在nginx虚拟主机location配置中添加规则,规则如下:

location / {

  if (!-e $request_filename){

    rewrite ^/(.*)$ /index.php/$1 last;

  }

}

附:nginx开启PHP及pathinfo支持的方法,在server内部添加如下内容:

location ~ \.php(.*)$ {

  root D:/wwwroot; #你的网站目录

  fastcgi_pass 127.0.0.1:9000; #php-cgi监听地址

  fastcgi_index index.php; #默认页

  fastcgi_split_path_info ^(.+\.php)(.*)$; #分离路径

  fastcgi_param PATH_INFO $fastcgi_path_info; #添加PATH_INFO信息

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

  include fastcgi_params;

}

独立手机版

启用独立手机版可以PC/移动分别设置模板

步骤说明

  • 1)在后台配置中开启手机版开关;
  • 2)在PC模板目录下面建立wap目录,放入模板文件,各模板文件名同PC。例如:default/wap;
  • 3)使用手机或者浏览器模拟手机进行访问。
返回顶部