基本使用
自定义字段输出需要根据当前的情景来使用变量,不要一味的复制粘贴!
自定义字段默认输出的是数据库存储的内容
假设自定义字段为:test
栏目列表输出
{foreach $lists as $v}
{$v['test']}
{/foreach}
内容页输出
{$jz['test']}
loop方式输出
{loop table="article" as="v"}
{$v['test']}
{/loop}
自定义单选字段
默认输出的内容是数据库存储的,而单选字段存储的可能是一个数字,所以需要其他方式输出 假设自定义单选字段为:test
栏目列表输出
{foreach $lists as $v}
{fun get_key_field_select($v['test'],$v['molds'],'test')}
{/foreach}
内容页输出
{fun get_key_field_select($jz['test'],$jz['molds'],'test')}
loop方式输出
{loop table="article" as="v"}
{fun get_key_field_select($v['test'],$v['molds'],'test')}
{/loop}
自定义多选字段
默认输出的内容是数据库存储的,应该是类似:,1,2, 输出对应的内容需要特殊的方式 假设自定义多选字段为:test 选项如:白色=1,黑色=2,红色=3
栏目列表输出
{foreach $lists as $v}
#用空格分割
{fun implode(' ',get_key_field_select($v['test'],$v['molds'],'test') )}
#用 , 分割
{fun implode(',',get_key_field_select($v['test'],$v['molds'],'test') )}
{/foreach}
内容页输出
{fun implode(',',get_key_field_select($jz['test'],$jz['molds'],'test') )}
loop方式输出
{loop table="article" as="v"}
{fun implode(',',get_key_field_select($v['test'],$v['molds'],'test') )}
{/loop}
自定义图集字段
假设自定义图集字段为 abc
{php $pictures = explode('||',$jz['abc']) /}
{foreach $pictures as $v}
{php $pic = explode("|",$v); /}
图片链接:{$pic[0]}
图片描述:{$pic[1]} //v1.7.1+新增
{/foreach}
简写
{foreach explode('||',$jz['abc']) as $v}
{php $pic = explode("|",$v); /}
图片链接:{$pic[0]}
图片描述:{$pic[1]} //v1.7.1+新增
{/foreach}
自定义多附件
假设自定义多附件字段为 abc
{php $files = explode('||',$jz['abc']) /}
{foreach $files as $v}
{php $f = explode("|",$v); /}
附件链接:{$f[0]}
附件描述:{$f[1]} //v1.7.1+新增
{/foreach}
简写
{foreach explode('||',$jz['abc']) as $v}
{php $pic = explode("|",$v); /}
图片链接:{$pic[0]}
图片描述:{$pic[1]} //v1.7.1+新增
{/foreach}
$jz 仅在内容页模板可以使用,其他情况,请根据当前变量处理
自定义多行录入
多行录入是通过
||
进行拼接内容的,只需要拆分||
就可以输出每一行
假设字段为 abc
,内容页输出每一行
{foreach explode('||',$jz['abc']) as $v}
{php $pic = explode("|",$v); /}
{$v}
{/foreach}
自定义关联字段
关联字段关联的是那个模型的
ID
,输出关联的内容需要配置loop
进行输出 操作
- 选择需要关联的模型,如:栏目
- 选择关联模型需要显示出的字段,如:classname 意思就是当你需要选择栏目的时候,希望看到栏目的什么信息,肯定是栏目名字,不然都不知道选择哪个
- 一般关联字段的长度都是
11
int类型
前台输出关联的内容
假设关联字段为
abc
,关联模型是:商品
,显示字段是:title
{loop table="article" isshow="1" limit="10" as="v"}
关联字段内容:{$v['abc']}
关联信息:
{loop table="product" id="$v['abc']" as="vv"}
商品标题:{$vv['title']}
商品缩略图:{$vv['litpic']}
商品链接:{$vv['url']}
{/loop}
{/loop}
多选关联输出
假设关联字段为
abc
,关联模型是:用户
,显示字段是:username
{loop table="article" isshow="1" limit="10" as="v"}
关联字段内容:{$v['abc']}
关联信息:需要先判断是否存在关联,否则可能会报错
{php $gl = trim($v['abc'],',');/}
{if($gl)}
{loop table="member" in="id|$gl" as="vv"}
用户名:{$vv['username']}
{/loop}
{/if}
{/loop}
批量指定字段输出
一般使用在详情页里面,比如商品参数
<table class="table table-bordered">
<tbody>
<tr><th>参数</th><th>值</th></tr>
{foreach jz_show_fields($jz,'color,lx,hy') as $v}
<tr><td>{$v['title']}</td><td>{$v['data']}</td></tr>
{/foreach}
</tr>
</tbody>
</table>
指定
color
,lx
,hy
三个参数属性显示
输出单选多选选项
假设abc为自定义的单选字段,且在内容模块(article)中
<select name="abc" id="abc">
{foreach get_field_select('article','abc') as $v}
<option value="{$v[1]}">{$v[0]}</option>
{/foreach}
</select>