PbootCMS开发手册

简介: 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=* ,使用第二个将避免中英文长度不统一问题,一个英文字符算半个字 (V1.3.5+)内容截取时可使用more='*'设置省略号内容,设置more=''则不显示省略号 如:内容列表标题截取[list:title len=10]、内容详情页时间格式化{content:title len=10}  substr=x,y 截取一段 substr截取字符串长度,传递两个数字,第一个为起始位置,第二个为截取长度,如只有一个数字则截取此数字起后面全部

HTML

复制

使用说明:

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

5、其它格式化标签

dropblank=1 ,去除空白字符,如换行符、制表符等decode=1 解码数据html字符,如果等于0.则不解码(包括源码已经解码的),此标签一般不使用 decimal=* 小数点位数unit=* 容量单位,可以是kb,mb,gb,tb,pb,eb

HTML

复制

6、自定义标签

{label:***}

HTML

复制

使用说明:

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

7、面包屑标签

{pboot:position}

HTML

复制

参数说明:

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/sitemaphttp://domain/index.php/sitemap.xml

使用说明:

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

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

14、图片缩放(v1.3.5+)

总共四个参数: width=* height=* maxwidth=*  maxheight=*如:[list:ico width=100]

使用说明:

四个参数可以组合使用。

站点信息标签

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

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

{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} 根据不同页面自动显示描述

导航栏菜单列表标签

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

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

1、导航菜单列表

{pboot:nav}<a href="[nav:link]">[nav:name]</a> {/pboot:nav}

控制参数:

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

parent=* 父菜单编码,非必填,用于控制输出列表的父菜单编码,默认0,即从一级菜单开始输出

parent={sort:pcode} 可用于输出当前栏目的同级菜单

parent={sort:scode} 可用于输出当前栏目的子菜单

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

2、可使用的列表标签

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

3、常见使用示例

高亮菜单

使用判断语句:

{pboot:if('[nav:scode]'=='{sort:tcode}')}class="active"{/pboot:if}

HTML

复制

首页特殊用法:

{pboot:if(0=='{sort:scode}')}class="active"{/pboot:if}

HTML

复制

菜单嵌套

二级嵌套

{pboot:nav}
<a href= "[nav:link]">[nav:name]</a>
 {pboot:2nav parent=[nav:scode]}
<a href= "[2nav:link]">[2nav:name]</a>
 {/pboot:2nav}{/pboot:nav}

HTML

复制

三级嵌套

{pboot:nav}
<a href= "[nav:link]">[nav:name]</a>
 {pboot:2nav parent=[nav:scode]}
<a href= "[2nav:link]">[2nav:name]</a>
 {pboot:3nav parent=[2nav:scode]}
<a href= "[3nav:link]">[3nav:name]</a>
 {/pboot:3nav}
{/pboot:2nav}
{/pboot:nav}

HTML

复制

如果有更多级别,以此类推,使用数字依层级套用,理论上不限级调用

相关文章
|
2月前
|
存储 关系型数据库 MySQL
【阿里规约】阿里开发手册解读——数据库和ORM篇
从命名规范、建表规范、查询规范、索引规范、操作规范等角度出发,详细阐述MySQL数据库使用过程中所需要遵循的各种规范。
【阿里规约】阿里开发手册解读——数据库和ORM篇
|
1月前
|
SQL Serverless 数据库
数据库常用DQL语言合集
数据库常用DQL语言合集
|
6月前
|
存储 Oracle 关系型数据库
达梦数据库入门语法:从基础到进阶的指南
达梦数据库入门语法:从基础到进阶的指南
880 2
|
6月前
|
存储 SQL 关系型数据库
【MySQL进阶之路丨第七篇】MySQL数据类型及数据表的创建与删除
【MySQL进阶之路丨第七篇】MySQL数据类型及数据表的创建与删除
71 0
|
6月前
|
存储 数据可视化 关系型数据库
【MySQL进阶之路丨第六篇】数据库的创建、选择和删除
【MySQL进阶之路丨第六篇】数据库的创建、选择和删除
83 0
|
SQL 存储 运维
进阶宝典一|SqlServer数据库自动备份设置
进阶宝典一|SqlServer数据库自动备份设置
|
SQL 关系型数据库 MySQL
kingbaseES(人大金仓)数据库语法和常用函数 以及 踩坑记录
最近公司弄了个新项目,数据库指定使用kingbase数据库
|
SQL 存储 关系型数据库
java面试题(十四)数据库之sql
1.1 介绍一下数据库分页 参考答案 MySQL的分页语法: 在MySQL中,SELECT语句默认返回所有匹配的行,它们可能是指定表中的每个行。为了返回第一行或前几行,可使用LIMIT子句,以实现分页查询。LIMIT子句的语法如下: -- 在所有的查询结果中,返回前5行记录。 SELECT prod_name FROM products LIMIT 5; -- 在所有的查询结果中,从第5行开始,返回5行记录。 SELECT prod_name FROM products LIMIT 5,5; 总之,带一个值的LIMIT总是从第一行开始,给出的数为返回的行数。带两个值的LIMIT可以指定从行号
130 1
|
关系型数据库 MySQL 数据处理
猿创征文|MySQL基本查询语句的应用(有实例与代码)
猿创征文|MySQL基本查询语句的应用(有实例与代码)
317 0
|
存储 SQL 算法
java面试题(十五)数据库之索引
2.1 说一说你对MySQL索引的理解 参考答案 索引是一个单独的、存储在磁盘上的数据库结构,包含着对数据表里所有记录的引用指针。使用索引可以快速找出在某个或多个列中有一特定值的行,所有MySQL列类型都可以被索引,对相关列使用索引是提高查询操作速度的最佳途径。 索引是在存储引擎中实现的,因此,每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。MySQL中索引的存储类型有两种,即BTREE和HASH,具体和表的存储引擎相关。MyISAM和InnoDB存储引擎只支持BTREE索引;MEMORY/HEAP存储引擎可以支持HASH和BTREE索引。 索引的优点主要有以下几
231 0