基础标签

{jv:include}引入子模板文件,实现头部、底部等公共部分复用
語法
{jv:include file='header.html' /}
參數
參數名說明
file子模板文件名(相对当前模板目录)
示例
{jv:include file='header.html' /}
页面内容
{jv:include file='footer.html' /}
{jv:lang}输出语言包文本,自动按当前站点语言显示
語法
{jv:lang name='view_more' /}
參數
參數名說明
name语言包键名(languages/{语言}/web.php)
示例
<span>{jv:lang name='view_more' /}</span>
{jv:global}输出系统设置项(支持多语言值)
語法
{jv:global name='site_name' /}
參數
參數名說明
name设置键名,如 site_name、site_keywords、site_description
示例
<title>{jv:global name='site_name' /}</title>
{jv:config}输出系统配置项(不区分语言)
語法
{jv:config name='icp' /}
參數
參數名說明
name配置键名
示例
{jv:config name='icp' /}
{jv:url}URL前缀标签,自动拼接当前语言路径前缀
語法
{jv:url}list/4.html
示例
<a href="{jv:url}list/4.html">新闻中心</a>
{jv:assign}在模板中定义变量
語法
{jv:assign name="x" value="1" /}
參數
參數名說明
name变量名
value变量值
示例
{jv:assign name="col" value="3" /}
{jv:col}
{jv:define}定义PHP常量
語法
{jv:define name="MY_CONST" value="abc" /}
參數
參數名說明
name常量名
value常量值
示例
{jv:define name="SITE_COL" value="5" /}
{jv:hook}插件钩子,输出插件挂载内容
語法
{jv:hook name='index_top' /}
參數
參數名說明
name钩子名(插件监听 template_钩子名)
示例
{jv:hook name='footer_ad' /}
{jv:php}在模板中执行原生PHP代码(谨慎使用)
語法
{jv:php}...{/jv:php}
示例
{jv:php}echo date('Y');{/jv:php}
{jv:count}输出指定分类的文章总数
語法
{jv:count typeid="4" /}
參數
參數名說明
typeid分类ID
示例
共 {jv:count typeid="4" /} 篇文章

流程控制

{jv:if}条件判断,支持比较与逻辑表达式
語法
{jv:if condition='表达式'}...{jv:elseif condition='...' /}...{jv:else /}...{/jv:if}
參數
參數名說明
condition条件表达式,如 (price==0)、(id>10 && status==1)
示例
{jv:if condition='(price==0)'}
  <span>免费</span>
{jv:else /}
  <span>¥{jv:price}</span>
{/jv:if}
{jv:foreach}遍历数组变量
語法
{jv:foreach name="list" item="v" key="k"}...{/jv:foreach}
參數
參數名說明
name数组变量名
item值变量名
key键变量名(可选)
示例
{jv:foreach name="list" item="v"}
  <li>{jv:v.title}</li>
{/jv:foreach}
{jv:volist}数据列表循环(类似foreach,常用于数据行)
語法
{jv:volist name="list" id="vo"}...{/jv:volist}
參數
參數名說明
name数组变量名
id行变量名
示例
{jv:volist name="list" id="vo"}
  <li>{jv:vo.title}</li>
{/jv:volist}
{jv:for}计数循环
語法
{jv:for start="1" end="10" step="1" name="i"}...{/jv:for}
參數
參數名說明
start起始值
end结束值
step步长
name循环变量名
示例
{jv:for start="1" end="5" name="i"}
  <span>{jv:i}</span>
{/jv:for}
{jv:switch}多分支选择
語法
{jv:switch name="type"}{jv:case value="1"}...{/jv:case}{jv:default}...{/jv:default}{/jv:switch}
參數
參數名說明
name判断变量
value匹配值
示例
{jv:switch name="model"}
{jv:case value="article"}文章{/jv:case}
{jv:default}其他{/jv:default}
{/jv:switch}

导航与分类

{jv:nav}循环输出网站栏目导航
語法
{jv:nav type="" typeid="" row="10" currentstyle="active"}...{/jv:nav}
參數
參數名說明
type栏目类型(留空全部)
typeid指定父栏目ID
row数量限制
currentstyle当前栏目附加的CSS类名
示例
{jv:nav row="10" currentstyle="on"}
  <li class="{jv:currentstyle}"><a href="{jv:url}list/{jv:id}.html">{jv:name}</a></li>
{/jv:nav}
{jv:typelist}输出指定栏目的子栏目列表
語法
{jv:typelist type="son" typeid="39"}...{/jv:typelist}
參數
參數名說明
typeson=子栏目
typeid父栏目ID
示例
{jv:typelist type="son" typeid="39"}
  <a href="{jv:url}list/{jv:id}.html">{jv:name}</a>
{/jv:typelist}
{jv:breadcrumb}面包屑导航
語法
{jv:breadcrumb}...{/jv:breadcrumb}
示例
{jv:breadcrumb}
  <a href="{jv:typeurl}">{jv:typename}</a>
{/jv:breadcrumb}
{jv:language}循环输出站点已启用的语言列表(语言切换器)
語法
{jv:language}...{/jv:language}
示例
{jv:language}
  <a href="{jv:language_url}">{jv:name}</a>
{/jv:language}

文章标签

{jv:artlist}文章列表循环,最核心数据标签
語法
{jv:artlist typeid="4" loop="10" orderby="new" flag="c" titlelen="30" infolen="80"}...{/jv:artlist}
參數
參數名說明
typeid分类ID(留空取当前分类)
loop / row显示数量,默认10
limit“0,10” 格式:偏移,数量
orderby排序:new最新 / hot热门 / rand随机
flag属性筛选:c推荐 h头条 a特荐 s滚动 p图片
noflag排除属性
keyword关键词筛选
idlist指定文章ID列表,逗号分隔
subdayN天内的文章
titlelen标题截取长度
infolen简介截取长度
示例
{jv:artlist typeid="4" loop="8" orderby="new" flag="c"}
  <a href="{jv:arcurl}">
    <img src="{jv:litpic}" alt="{jv:title}">
    <h3>{jv:title|text_overflow='20',###}</h3>
    <span>{jv:add_time|MyDate='Y-m-d',###}</span>
  </a>
{/jv:artlist}
{jv:artone}读取单篇文章数据
語法
{jv:artone aid="1"}...{/jv:artone}
參數
參數名說明
aid文章ID
示例
{jv:artone aid="1"}
  <h2>{jv:title}</h2>
{/jv:artone}
{jv:arthot}热门/最新/随机/推荐文章的快捷标签,参数同artlist
語法
{jv:arthot typeid="4" loop="5"}...{/jv:arthot}
參數
參數名說明
loop数量
typeid分类ID
示例
{jv:arthot loop="5"}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:arthot}
{jv:relevarticle}相关文章(按当前文章分类),别名 likearticle
語法
{jv:relevarticle loop="5"}...{/jv:relevarticle}
參數
參數名說明
loop数量,默认5
orderby排序
示例
{jv:relevarticle loop="6"}
  <li><a href="{jv:arcurl}">{jv:title}</a></li>
{/jv:relevarticle}
{jv:beafter}上一篇/下一篇文章
語法
{jv:beafter get='pre'}...{jv:else /}...{/jv:beafter}
參數
參數名說明
getpre=上一篇 / next=下一篇
示例
{jv:beafter get='pre'}
  <a href="{jv:arcurl}">{jv:title}</a>
{jv:else /}
  <span>没有了</span>
{/jv:beafter}
{jv:tag}输出当前文章的TAG标签及链接
語法
{jv:tag}...{/jv:tag}
示例
{jv:tag}
  <a href="{jv:link}">{jv:tag}</a>
{/jv:tag}
{jv:artcount}文章统计数
語法
{jv:artcount typeid="4" /}
參數
參數名說明
typeid分类ID
示例
{jv:artcount typeid="4" /}
{jv:listitem}列表页数据行循环(配合分页)
語法
{jv:listitem}...{/jv:listitem}
示例
{jv:listitem}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:listitem}
{jv:pagelist}分页导航输出(首页/上一页/页码/下一页/尾页)
語法
{jv:pagelist /}
示例
{jv:pagelist /}
{jv:position}当前位置导航
語法
{jv:position /}
示例
{jv:position /}

问答标签

{jv:qacatlist}问答分类列表
語法
{jv:qacatlist}...{/jv:qacatlist}
示例
{jv:qacatlist}
  <a href="{jv:url}list/{jv:id}.html">{jv:name}</a>
{/jv:qacatlist}
{jv:qanewlist}最新问题列表,可按状态筛选
語法
{jv:qanewlist num="10" status="all"}...{/jv:qanewlist}
參數
參數名說明
num数量,默认10
statusall全部 / solved已解决 / waiting待回答 / bounty悬赏
示例
{jv:qanewlist num="12" status="solved"}
  <a href="{jv:arcurl}">{jv:title}</a><em>{jv:answer_count}</em>
{/jv:qanewlist}
{jv:qahotlist}热门问题列表
語法
{jv:qahotlist num="10"}...{/jv:qahotlist}
參數
參數名說明
num数量
示例
{jv:qahotlist num="5"}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:qahotlist}
{jv:qaunsolved}未解决问题列表
語法
{jv:qaunsolved num="5"}...{/jv:qaunsolved}
參數
參數名說明
num数量,默认5
示例
{jv:qaunsolved num="5"}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:qaunsolved}
{jv:qacatlistbyid}指定问答分类下的问题列表
語法
{jv:qacatlistbyid typeid="2" num="10"}...{/jv:qacatlistbyid}
參數
參數名說明
typeid问答分类ID
num数量
示例
{jv:qacatlistbyid typeid="2" num="8"}
  <li>{jv:title}</li>
{/jv:qacatlistbyid}
{jv:answerlist}当前问题的回答列表(问答详情页)
語法
{jv:answerlist}...{/jv:answerlist}
示例
{jv:answerlist}
  <div class="ans">{jv:content}</div>
{/jv:answerlist}
{jv:qabest}精华回答/已解决问题/问题统计
語法
{jv:qacount /}
示例
{jv:qabest num="5"}...{/jv:qabest}

论坛标签

{jv:forumlist}最新论坛帖子列表
語法
{jv:forumlist num="7" orderby="new" titlelen="30"}...{/jv:forumlist}
參數
參數名說明
num数量,默认7
orderbynew最新 / hot热门
titlelen标题截取
示例
{jv:forumlist num="10"}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:forumlist}
{jv:forumhot}热门/精华/置顶帖子列表
語法
{jv:forumhot num="7"}...{/jv:forumhot}
參數
參數名說明
num数量
示例
{jv:forumessence num="5"}
  <li>{jv:title}</li>
{/jv:forumessence}

商城标签

{jv:mallcat}商城商品分类列表
語法
{jv:mallcat}...{/jv:mallcat}
示例
{jv:mallcat}
  <a href="{jv:mall_cat_url}">{jv:name}</a>
{/jv:mallcat}
{jv:mallproductlist}商品列表循环
語法
{jv:mallproductlist num="8" orderby="featured" typeid="0"}...{/jv:mallproductlist}
參數
參數名說明
num数量,默认8
orderbyfeatured精选 / new最新 / sales销量 / hot热门
typeid商品分类ID
示例
{jv:mallproductlist num="4"}
  <a href="{jv:arcurl}"><img src="{jv:litpic}">{jv:title}</a>
{/jv:mallproductlist}
{jv:mallhot}热门/最新/相关商品快捷标签
語法
{jv:mallhot num="8"}...{/jv:mallhot}
參數
參數名說明
num数量
示例
{jv:mallhot num="4"}
  <li>{jv:title}</li>
{/jv:mallhot}
{jv:mallbeafter}上一个/下一个商品
語法
{jv:mallbeafter get='pre'}...{jv:else /}...{/jv:mallbeafter}
參數
參數名說明
getpre / next
示例
{jv:mallbeafter get='next'}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:mallbeafter}
{jv:mallbrandlist}品牌列表 / 商品分类树
語法
{jv:mallbrandlist}...{/jv:mallbrandlist}
示例
{jv:mallbrandlist}
  <img src="{jv:logo}">{jv:name}
{/jv:mallbrandlist}

系统与扩展

{jv:slide}轮播图/幻灯片数据
語法
{jv:slide}...{/jv:slide}
示例
{jv:slide}
  <a href="{jv:link}"><img src="{jv:pic}"></a>
{/jv:slide}
{jv:ad}广告位输出
語法
{jv:ad name="index_top" /}
參數
參數名說明
name广告位标识
示例
{jv:ad name="index_top" /}
{jv:flink}友情链接列表
語法
{jv:flink}...{/jv:flink}
示例
{jv:flink}
  <a href="{jv:url}">{jv:name}</a>
{/jv:flink}
{jv:tagcloud}TAG标签云
語法
{jv:tagcloud num="20"}...{/jv:tagcloud}
參數
參數名說明
num数量
示例
{jv:tagcloud num="30"}
  <a href="{jv:link}">{jv:tag}</a>
{/jv:tagcloud}
{jv:stats}站点统计数据
語法
{jv:stats name="article" /}
參數
參數名說明
name统计项
示例
{jv:stats name="article" /}
{jv:userbox}用户登录状态框
語法
{jv:userbox /}
示例
{jv:userbox /}
{jv:collect}收藏数据循环
語法
{jv:collect}...{/jv:collect}
示例
{jv:collect}
  <a href="{jv:arcurl}">{jv:title}</a>
{/jv:collect}
{jv:downloadlist}下载模型附件列表
語法
{jv:downloadlist}...{/jv:downloadlist}
示例
{jv:downloadlist}
  <a href="{jv:downurl}">{jv:name}</a>
{/jv:downloadlist}
{jv:joblist}招聘信息列表
語法
{jv:joblist}...{/jv:joblist}
示例
{jv:joblist}
  <h4>{jv:title}</h4>
{/jv:joblist}
{jv:sql}自定义SQL查询循环(高级)
語法
{jv:sql sql="SELECT ..."}...{/jv:sql}
參數
參數名說明
sqlSELECT语句
示例
{jv:sql sql="SELECT id,title FROM jv_article LIMIT 5"}
  <li>{jv:title}</li>
{/jv:sql}

变量与过滤器

{jv:variable}输出变量:{jv:变量名},数组用点语法 {jv:vo.title}
語法
{jv:title}  {jv:vo.title}
示例
<h1>{jv:title}</h1>
<span>{jv:cat_name}</span>
{jv:filter}变量过滤器:MyDate日期格式化、text_overflow文本截断、cn_substr中文截取
語法
{jv:add_time|MyDate='Y-m-d',###}
{jv:title|text_overflow='20',###}
參數
參數名說明
MyDate日期格式化,参数为date()格式
text_overflow超出长度显示省略号
cn_substr按字符截取中英文
示例
{jv:add_time|MyDate='m-d H:i',###}
{jv:description|text_overflow='50',###}
{jv:field}详情页字段别名:field.title、field.keywords、field.description、field.content、field.click、field.pubdate、field.typeurl、field.arcurl 等
語法
{jv:field.title /}  {jv:field.content /}
示例
<title>{jv:field.title /}</title>
<meta name="description" content="{jv:field.description /}">
{jv:global}全局别名:global.cfg_webname站名、global.cfg_keywords关键词、global.cfg_description描述、global.cfg_templeturl模板目录、global.cfg_basehost域名
語法
{jv:global.cfg_webname /}
示例
<title>{jv:global.cfg_webname /}</title>
<link href="{jv:global.cfg_templeturl /}skin/css/style.css">
{jv:autoindex}循环内自增序号,从1开始
語法
{jv:autoindex}
示例
{jv:artlist loop="5"}
  <li><i>{jv:autoindex}</i>{jv:title}</li>
{/jv:artlist}