站点信息标签
| 站点标题 |
{$webconf['web_name']} |
站点关键字 |
{$webconf['web_keyword']} |
| 站点描述 |
{$webconf['web_desc']} |
统计代码 |
{$webconf['web_js']} |
|
| 网站电话 |
{$webconf['web_tel']} |
400电话 |
{$webconf['web_tel_400']} |
| 备案号 |
{$webconf['web_beian']} |
版权信息 |
{$webconf['web_copyright']} |
| 网站QQ |
{$webconf['web_qq']} |
网站邮箱 |
{$webconf['web_email']} |
| 公司地址 |
{$webconf['web_address']} |
手机号码 |
{$webconf['web_phone']} |
| 网站LOGO |
{$webconf['web_logo']} |
网址 |
{$webconf['domain']} |
| 微信二维码 |
{$webconf['web_weixin']} |
|
| 头部引入 |
{include="header"} |
底部引入 |
{include="footer"} |
页面信息标签
首 页
<title>{$webconf['web_name']}</title>
<meta name="keywords" content="{$webconf['web_keyword']}" />
<meta name="description" content="{$webconf['web_desc']}" />
列 表 页
<title>{$type['classname']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$type['keywords']}" />
<meta name="description" content="{$type['description']}" />
详 细 页
<title>{$jz['title']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$jz['keywords']}" />
<meta name="description" content="{$jz['description']}" />
单 页
<title>{$type['classname']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$type['keywords']}" />
<meta name="description" content="{$type['description']}" />
loop导航标签
| 遍历开始 |
{loop table="classtype" isshow="1" pid="0" as="v"} |
| 栏目序号0开始 |
{$v_key} |
| 栏目序号1开始 |
{$v_n} |
| 栏目名称 |
{$v['classname']} |
| 栏目链接 |
{$v['url']} |
| 栏目缩略图 |
{$v['litpic']} |
| 栏目关键字 |
{$v['keywords']} |
| 栏目描述 |
{$v['description']} |
| 首页高亮 |
{if(!isset($type))}color{/if} |
| 子页高亮 |
{if(isset($type) && in_array($type['id'],$v['children']['ids']))}color{/if} |
| 遍历结束 |
{/loop} |
|
| 判断下级 |
{if(haschild($classtypedata,$v['id']))} |
| 下级遍历开始 |
{foreach $classtypedata[$v['id']]['children']['list'] as $vv} |
| 栏目名 |
{$vv['classname']} |
| 栏目链接 |
{$vv['url']} |
| 栏目缩略图 |
{$vv['litpic']} |
| 下级遍历结束 |
{/foreach} |
| 判断结束 |
{/if} |
LEFT菜单标签
输出当前栏目下级,如果没有下级则输出同级
| 判断是否有下级 |
{if($classtypedata[$type['id']]['haschild'])} |
| 循环开始 |
{foreach $classtypedata[$type['id']]['children']['list'] as $v} |
| 栏目名称 |
{$v['classname']} |
| 栏目链接 |
{$v['url']} |
| 遍历结束 |
{/foreach} |
| 输出同级栏目 |
| {else} |
{else} |
| 栏目描述 |
{foreach $classtypedata as $v}{if($type['pid']==$v['pid'])} |
| 栏目名称 |
{$v['classname']} |
| 栏目链接 |
{$v['url']} |
| 栏目链接 |
{/if}{/foreach} |
| 判断结束 |
{/if} |
幻灯片标签
| 输出所有 |
{loop table="collect" orderby="orders desc" isshow="1" as="v"} |
| 分类输出 |
{loop table="collect" orderby="orders desc" tid="1" isshow="1" as="v"} |
| 标题 |
{$v['title']} |
| 缩略图 |
{$v['litpic']} |
| 链接 |
{$v['url']} |
| 描述 |
{$v['description']} |
| 创建时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 结束 |
{/loop} |
首页新闻列表页标签
| 所有文章 |
{loop table="article" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 指定栏目(不含下级) |
{loop table="article" tid="1" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 指定栏目(含下级) |
{loop table="article" tid="1" isall="1" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 栏目序号0开始 |
{$v_key} |
| 栏目序号1开始 |
{$v_n} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[$v['tid']]['classname']} |
| 栏目链接 |
{$classtypedata[$v['tid']]['url']} |
| 发布时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 遍历结束 |
{/loop} |
首页产品列表标签
| 所有产品 |
{loop table="product" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 指定栏目(不含下级) |
{loop table="product" tid="1" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 指定栏目(含下级) |
{loop table="product" tid="1" isall="1" orderby="orders desc,hits desc,addtime desc,id desc" isshow="1" limit="10" as="v"} |
| 栏目序号0开始 |
{$v_key} |
| 栏目序号1开始 |
{$v_n} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[$v['tid']]['classname']} |
| 栏目链接 |
{$classtypedata[$v['tid']]['url']} |
| 发布时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 图集 |
{php $pictures = explode('||',$v['pictures']) /}{foreach $pictures as $v}{if($v!='')} |
| 图片链接 |
{$v} |
| 图集结束 |
{/if}{/foreach} |
| 遍历结束 |
{/loop} |
指定内容标签
| 所有产品 |
{loop table="classtype" id="1" as="v"} |
| 栏目名称 |
{$v['classname']} |
| 栏目链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[1]['classname']} |
| 栏目链接 |
{$classtypedata[1]['url']} |
| 栏目简介 |
{$classtypedata[1]['description']} |
| 栏目缩略图 |
{$classtypedata[1]['litpic']} |
| 栏目内容 |
{$classtypedata[1]['body']} |
| 遍历结束 |
{/loop} |
友情链接标签
| 输出所有 |
{loop table="links" isshow="1" orderby="orders desc" as="v"} |
| 分类输出 |
{loop table="links" tid="1" isshow="1" orderby="orders desc" as="v"} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 结束 |
{/loop} |
列表页标签
<title>{$type['classname']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$type['keywords']}" />
<meta name="description" content="{$type['description']}" />
|
| 头部引入 |
{include="header"} |
底部引入 |
{include="footer"} |
| 遍历开始 |
{foreach $lists as $v} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[$v['tid']]['classname']} |
| 栏目链接 |
{$classtypedata[$v['tid']]['url']} |
| 发布时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 图集 |
{php $pictures = explode('||',$v['pictures']) /}{foreach $pictures as $v}{if($v!='')} |
| 图片链接 |
{$v} |
| 图集结束 |
{/if}{/foreach} |
| 遍历结束 |
{/foreach} |
分页代码标签
<nav>
<a href="{$listpage['home']}">首页</a>
<a href="{$listpage['prev']}">上一页</a>
{foreach $listpage['list'] as $ss}
<a href="{$ss['url']}" {if($ss['num']==$listpage['current_num'])}class="active"{/if}>{$ss['num']}</a>
{/foreach}
<a href="{$listpage['next']}">下一页</a>
<a href="{$listpage['last']}">尾页</a>
</nav> |
| 判断开始 |
{if($v_n)} |
| 完整输出 |
{$pages} |
| 总条数 |
{$sum} |
| 总页数 |
{$allpage} |
| 首页链接 |
{$listpage['home']} |
| 尾页链接 |
{$listpage['last']} |
| 上一页链接 |
{$listpage['prev']} |
| 下一页链接 |
{$listpage['next']} |
| 当前页链接 |
{$listpage['current']} |
| 当前页页码 |
{$listpage['current_num']} |
|
| 循环开始 |
{foreach $listpage['list'] as $ss} |
| 判断高亮 |
{if($ss['num']==$listpage['current_num'])} active {/if} |
| 链接 |
{$ss['url']} |
| 页码 |
{$ss['num']} |
| 循环结束 |
{/foreach} |
详情页标签
<title>{$jz['title']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$jz['keywords']}" />
<meta name="description" content="{$jz['description']}" />
|
| 头部引入 |
{include="header"} |
底部引入 |
{include="footer"} |
| 标题 |
{$jz['title']} |
| 当前位置 |
{$positions} |
| 点击量 |
{fun incrData($jz['molds'],$jz['id'],'hits')} |
| 点击量 |
{fun incrData('article',$jz['id'],'hits')} |
| 缩略图 |
{$jz['litpic']} |
| 简介 |
{$jz['description']} |
| 内容 |
{$jz['body']} |
| 作者 |
{fun adminInfo($jz['userid'],'name')} |
| 时间 |
{fun date('Y-m-d',$jz['addtime'])} |
| 图集 |
{php $pictures = explode('||',$jz['pictures']) /}{foreach $pictures as $v}{php $pic = explode('|',$v); /} |
| 图片链接 |
{$pic[0]} |
| 图片描述 |
{$pic[1]} |
| 图集结束 |
{/foreach} |
|
| 上一篇判断 |
{if($aprev)} |
| 上一篇链接 |
{$aprev['url']} |
上一篇标题 |
{$aprev['title']} |
| 下一篇判断 |
{if($anext)} |
| 上一篇链接 |
{$anext['url']} |
上一篇标题 |
{$anext['title']} |
| 循环结束 |
{else} #没有下一篇内容 |
| 判断结束 |
{/if} |
单页标签
<title>{$type['classname']}-{$webconf['web_name']}</title>
<meta name="keywords" content="{$type['keywords']}" />
<meta name="description" content="{$type['description']}" />
|
| 头部引入 |
{include="header"} |
底部引入 |
{include="footer"} |
| 栏目名称 |
{$type['classname']} |
| 当前位置 |
{$positions} |
| 栏目链接 |
{$type['url']} |
| 缩略图 |
{$type['litpic']} |
| 简介 |
{$type['description']} |
| 内容 |
{$type['body']} |
分页效果
| html结构 |
<div class="pagerss">
<div class="paginations">
<ul class="paginations">
<li class="page-items"><a class="page-link" href="{$listpage['home']}" aria-label="Previous"><span aria-hidden="true">首页</span></a></li>
<li class="page-items disabled">
<a class="page-link" href="{$listpage['prev']}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li>
{foreach $listpage['list'] as $ss}
<li class="page-items {if($ss['num']==$listpage['current_num'])}active background{/if}"><a href="{$ss['url']}" class="page-link">{$ss['num']}</a></li>
{/foreach}
<li class="page-items "><a class="page-link" href="{$listpage['next']}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li>
<li class="page-items"><a class="page-link" href="{$listpage['last']}" aria-label="Previous"><span aria-hidden="true">尾页</span></a></li>
</ul>
</div>
</div> |
| css代码 |
.pagerss .paginations{justify-content:center;}
.paginations ul li {float:left;background:#fff;border:1px solid #ccc;color:#333;font-size: 14px;margin:0 2px;}
.paginations ul li a{display:block;padding:8px 12px;}
.paginations ul li:hover {color:#03b8c8;border:1px solid #03b8c8;background-color:#03b8c8;}
.paginations ul li:hover a{color:#fff;}
.paginations ul li.active {background:#03b8c8;border:1px solid #03b8c8;}
.paginations ul li.active a{color:#fff;} |
下级循环
| html结构 |
<div class="container">
<div class="title">
<h3>{$classtypedata[2]['classname']}</h3>
</div>
<div class="gcnav">
<dt>{loop table="classtype" isshow="1" pid="2" as="v" limit="20" orderby="orders desc"}
<a href="{$v['url']}" target="_blank" title="{$v['classname']}">{$v['classname']}</a>
{/loop}
</dt>
</div>
{loop table="classtype" isshow="1" pid="2" as="v" orderby="orders desc"} //一级循环开始
<div class="list">
<ul>
{loop table="article" tid="$v['id']" ispage="1" isshow="1" limit="8" as="vv"} //二级循环开始
<li>
<a href="{$vv['url']}" title="{$vv['title']}">
<img src="{$vv['litpic']}" alt="{$vv['title']}" />
<h3>{$vv['title']}</h3>
<p class="ms">{$vv['description']}</p>
</li>
{/loop} //二级循环结束
</ul>
</div>
{/loop} //一级循环结束
</div> |
相关内容标签
| 相关文章 |
{loop table="article" tid="$type['id']" isall="1" orderby="hits desc,addtime desc" isshow="1" limit="10" as="v"} |
| 相关产品 |
{loop table="product" tid="$type['id']" isall="1" orderby="hits desc,addtime desc" isshow="1" limit="10" as="v"} |
| 栏目序号0开始 |
{$v_key} |
| 栏目序号1开始 |
{$v_n} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[$v['tid']]['classname']} |
| 栏目链接 |
{$classtypedata[$v['tid']]['url']} |
| 发布时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 图集 |
{php $pictures = explode('||',$v['pictures']) /}{foreach $pictures as $v}{if($v!='')} |
| 图片链接 |
{$v} |
| 图集结束 |
{/if}{/foreach} |
| 遍历结束 |
{/loop} |
在线留言标签
<form action ="{fun U('message/index')}" method="post">
<input name="tid" value="{$type['id']}" type="hidden">
标题:<input name="title" value="" type="text">
留言姓名:<input name="user" value="" type="text">
留言电话:<input name="tel" value="" type="text">
留言邮箱:<input name="email" value="" type="text">
留言内容:<input name="body" value="" type="text">
留言验证码:<input name="vercode" value="" type="text">
<img src="/common/vercode/name/message_vercode" onclick="this.src=this.src+'?'+Math.random()">
</form>
|
| 头部引入 |
{include="header"} |
底部引入 |
{include="footer"} |
| 输出循环开始 |
{loop table="message" isshow="1" as="v"} |
| 标题 |
{$v['title']} |
| 姓名 |
{$v['user']} |
| 电话 |
{$v['tel']} |
| 邮箱 |
{$v['email']} |
| 内容 |
{$v['body']} |
| IP |
{$v['ip']} |
| 时间 |
{fun date('Y-m-d H:i:s',$v['addtime'])} |
| 循环结束 |
{/loop} |
伪静态配置
标签作用:配置程序伪静态后URL中将不再包含index.php,整个地址更美观
1、IIS 配置
默认系统根目录自带,如果没有,新建 web.config, 将下面内容保存到文件里
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="allow_rules" enabled="true" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
2、Apache环境
默认系统根目录自带 .htaccess 文件,如果没有,新建一个,将下面内容放进去
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
#RewriteCond %{REQUEST_URI} !((.*).jpg|.jpeg|.bmp|.gif|.png|.js|.css|.tts|.woff )$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
#RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
RewriteRule ^(.*)$ index.php [E=PATH_INFO:$1,QSA,PT,L]
</IfModule>
3、Nginx环境
注意空格,不要省略了!!!
location /{
if ( !-e $request_filename ) {
rewrite ^(.*)$ /index.php?s=$1 last;
}
}
其他配置
| 字符串截取 |
{fun newstr($v['title'],30)} |
| 获取当前链接 |
{fun current_url()} |
| 二维码生成 |
<img src="{fun U('common/qrcode')}?data=https://123.com" /> |
| 二维码生成 |
<img src="{fun U('common/qrcode')}?data={fun current_url()}" /> |
| 头部引入 |
{include="header"} |
| 底部引入 |
{include="footer"} |
| 当前位置 |
{$positions} |
| 面包屑 |
| 循环开始 |
{foreach $positions_data as $v} |
| 栏目名称 |
{$v['classname']} |
| 栏目链接 |
{$v['url']} |
| 循环结束 |
{/foreach} |
搜索配置
| 关键词 |
{$word} |
|
| 搜索结果 |
{foreach $lists as $v} |
| 标题 |
{$v['title']} |
| 链接 |
{$v['url']} |
| 缩略图 |
{$v['litpic']} |
| 简介 |
{$v['description']} |
| 内容 |
{$v['body']} |
| 栏目名称 |
{$classtypedata[$v['tid']]['classname']} |
| 栏目链接 |
{$classtypedata[$v['tid']]['url']} |
| 发布时间 |
{fun date('Y-m-d',$v['addtime'])} |
| 循环结束 |
{/foreach} |