欢迎光临建站系统网站

FastAdmin-CMS模版制作(5)-标签使用

作者:jcmp      发布时间:2021-03-12      浏览量:0
一、数据准备 1.为防止影响当

一、数据准备

1.为防止影响当前模版,建议先删除系统默认模版数据。删除顺序为:

2.为方便站点完成后信息的统一管理和权限分配,这里不太建议在开发的过程中使用配置标签。因为配置标签的内容需要在插件管理中进行设置,一般比较适用于,一次设置后基本不会发生改变的值或者参数,比如模版名称,首页访问路径等等。所以页面中读取的内容不建议使用配置标签。

{cms:config name="xxxx"}

二、区块标签【block、blocklist】

1.使用场景:
(1)站点通用内容,如:网站名称,网站底部信息(备案信息,联系电话,logo等),子页面的banner;
(2)每个页面独有内容,如:主页的轮播图;
(3)页面上的补充内容,如:不同列表页面需要显示的内容或者图片。

2.后台操作:
(1)CMS管理→区块管理→添加



类型:
名称:
标题、图片、链接、内容:

3.标签使用:
(1)block标签,在页面中使用时通过id调用或者通过名称调用(名称最好能保持唯一)。

{cms:block id="标签ID" /}
{cms:block name="名称" /}

(2)blocklist标签,在页面中使用时通过名称调用,如果为列表内容时需要名称保持一致,如果为单标签需要获取多种内容时名称最好保持唯一。

{cms:blocklist id="block" name="指定区块的名称" row="显示行数" cache="缓存时间,调试阶段建议设置为0"}  {$block.title}//标题  {$block.id}//id  {$block.content}//内容  {$block.image}//图片  {$block.url}//链接{/cms:blocklist}

标签参数

三、单页标签【page】

1.使用场景:
(1)单页文章,如:临时的说明页,联系我们等;
(2)不需要文章列表的文章,如:导航栏文章等;
2.后台操作:
(1)CMS管理→单页管理→添加



类型:
标题、标志、图片、内容、关键字、描述:
自定义: /p/自定义名称
视图模版:
权重:


3.标签使用:
(1)单页标签在对应的模版中使用时,直接用标签调用对应信息的名称即可。调用时的字段名称可以直接在数据表fa_cms_page中查看;

{cms:page name="title" /} //标题{cms:page name="content" /} //内容{cms:page name="image" /} //图片{cms:page name="keywords" /} //关键字{cms:page name="description" /} //描述
CREATE TABLE `fa_cms_page` (  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',  `category_id` int(10) NOT NULL DEFAULT '0' COMMENT '分类ID',  `type` varchar(50) NOT NULL DEFAULT '' COMMENT '类型',  `title` varchar(50) NOT NULL DEFAULT '' COMMENT '标题',  `keywords` varchar(255) NOT NULL DEFAULT '' COMMENT '关键字',  `description` varchar(255) NOT NULL DEFAULT '' COMMENT '描述',  `flag` set('hot','index','recommend') NOT NULL DEFAULT '' COMMENT '标志',  `image` varchar(255) NOT NULL DEFAULT '' COMMENT '头像',  `content` text COMMENT '内容',  `icon` varchar(50) NOT NULL DEFAULT '' COMMENT '图标',  `views` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '点击',  `likes` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '点赞',  `dislikes` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '点踩',  `comments` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '评论',  `diyname` varchar(50) NOT NULL DEFAULT '' COMMENT '自定义',  `showtpl` varchar(50) NOT NULL DEFAULT '' COMMENT '视图模板',  `createtime` int(10) DEFAULT NULL COMMENT '创建时间',  `updatetime` int(10) DEFAULT NULL COMMENT '更新时间',  `weigh` int(10) NOT NULL DEFAULT '0' COMMENT '权重',  `status` varchar(30) NOT NULL DEFAULT '' COMMENT '状态',  PRIMARY KEY (`id`),  KEY `type` (`type`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='单页表';

(2)代码实例:

<aside id="fh5co-hero" class="js-fullheight">    <div class="flexslider js-fullheight">        <ul class="slides">            <li>                <div class="row">                    <div class="col-md-12 js-fullheight">                        <img class="js-fullheight" src="{cms:page name='image'/}" style="object-fit:cover"/>                    </div>                </div>            </li>        </ul>    </div></aside>

四、栏目标签【channel、channellist】

1.使用场景:
(1)网站导航,可以实现站点导航的动态新增和删除;
(2)文章列表页;
(3)文章详情页;

2.后台操作:
(1)根据文章需求添加栏目模型,CMS管理→模型管理→添加


(2)字段信息:


模型名称:
表名:
栏目模版:
列表模版:
详情页模版:

(3)自定义模型字段信息,如果文章中的基础信息无法满足文章详情的需求,可以在模型管理中自定义缺失的字段信息;


(4)新增栏目;CMS管理→栏目管理→添加;


(5)字段信息


类型:
模型ID、上级栏目、名称、图片、关键字、描述、栏目模版:
自定义名称:

3.标签使用:
(1)在导航栏中的使用;

                <nav id="fh5co-main-menu" role="navigation">                    <ul>                        {cms:channellist id="nav" type="top" condition="1=isnav" cache="0"}                            <!-- 判断是否有子栏目,如果有子栏目则采用二级菜单,如果没有则采用一级菜单 -->                            {if $nav.has_child}//判断当前一级栏目下是否有子栏目                                <li class="znav">                                    <a class="fist-menu  {if $nav->is_active} fh5co-active {/if}" href="#">{$nav.name}</a>//判断当前栏目是否被选中                                    <ul class="znav-list">                                        {cms:channellist id="item" type="son" typeid="$nav['id']" condition="1=isnav" cache="0"}                                        <li><a class="fist-menu  {if $item->is_active} fh5co-active {/if}" href="{$item.url}">{$item.name}</a></li>                                        {/cms:channellist}                                    </ul>                                                            </li>                            {else/}                                <li><a class="fist-menu {if $nav->is_active} fh5co-active {/if}" href="{$nav.url}">{$nav.name}</a></li>                            {/if}                        {/cms:channellist}                    </ul>                </nav>

官方示例:

{cms:channellist id="channel" type="son" typeid="$__CHANNEL__.id"}    //这里面可以调用cms_channel表的所有字段数据及其它扩展信息    {$channel.name}    {$channel.id}        //栏目组合链接    {$channel.textlink}    //栏目链接    {$channel.url}    //是否有缩略图    {$channel.hasimage}    //图片组合链接    {$channel.imglink}    //图片HTML    {$channel.img}{/cms:channellist}

orderby:排序字段,支持id,createtime,updatetime,rand(随机),weigh(权重)
orderway:排序方式,asc=正序,desc=倒序
imgwidth:图片宽度
imgheight:图片高度
condition:筛选条件,可使用SQL字段筛选
model:模型ID
field:调用字段,默认为*
type:指定类型,top=顶级栏目,brother=兄弟栏目,son=子栏目,sons=子孙栏目
typeid:指定类型关联的ID,如果type为空,这里可指定栏目的ID集合
(2)在文章页、列表页、频道页的使用,直接在文章页中可调用单标签channel

{cms:channel name="id" /}//栏目ID{cms:channel name="name" /}//栏目名称{cms:channel name="image" /}//栏目图片

调用名称可以参考栏目表fa_cms_channel中的字段名称

五、文章详情标签archives

标签在文章详情中的使用和上面的提到的单标签的使用方法一致,如果文章发布在的栏目类型为:栏目或者列表可能纯在自定义字段的情况,自定义字段的调用方式和单标签的使用方式一致,调用名称查看新建模型时的数据库字段名称。