怎么让dedecms搜索页面支持标签调用及自定义字段调用

怎么让dedecms搜索页面支持标签调用及自定义字段调用,第1张

dedecms栏目名称的调用方法:

{dede:field name="typename"} 调用当前栏目的名称

{dede:channel type='son' row='5'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:channel}调用该顶级频道下所有字栏目,row代表调用5条

{dede:type typeid='栏目id'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:type} 表示调用指定id的栏目,只能调用一个。

{dede:channel type='top'}<a>[field:typename/]</a> {/dede:channel}调用子栏目的当前顶级栏目名称。

调用顶级栏目名称示例代码:

{dede:fieldtitle runphp=’yes’}list($toptype,$sontype)=split(‘/’,@me);@me=$toptype;{/dede:fieldtitle}

dedecms也叫织梦内容管理系统,是一款知名的PHP开源网站内容管理系统,以简单、实用、开源而闻名,DedeCms免费版的主要目标用户在个人站长,功能更专注于个人网站或中小型门户的构建,当然也不乏有企业用户和学校等在使用。

普通文章列表调用内容多张不能用图集模型的办法,需要自己写一个函数,在include/extendfuncphp  增加函数

function Getpic($body)

{

    $getpic = '';

    preg_match_all("/(src)=[\"|'| ]{0,}([^>]\(gif|jpg|bmp|png))/isU",$body,$img_array);

    $img_array = array_unique($img_array[2]);

    if(count($img_array)>0)

    {

foreach($img_array as $key=>$value)

{

$picname = preg_replace("/[\"|'| ]{1,}/", '', $value);

$getpic ="<p><img src='"$picname"' border=0 /></p>";

}

}

else

{    

 $getpic="<p>没有</p>";

    }

    return $getpic;

}

列表页模版使用标签

{dede:list pagesize='10'  addfields='body'}

      <li><a href='[field:arcurl /]' target='_blank'>

  <span class="title">[field:title /]</span>

          [field:body function='Getpic(@me)'/]

  </a></li>

{/dede:list}

同时到网站后台-内容模型管理,修改普通文章模型附加列表字段增加body

保存后,就可以更新列表了,这样就能在列表页显示文章正文内所有

首页调用{dede:arclist typeid='xx' row='调用条数'channelid='文章模型id'addfields='自定义字段名' } [field:自定义字段/]{/dede:arclist}列表调用自定义字段:必须使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择)勾上他{dede:listpagesize='调用条数'channelid='文章模型id' addfields='自定义字段名'} [field:自定义字段/]{/dede:list}

在底层模板设置typeid参数,即可

标签名称:list

功能说明:表示列表模板里的分页内容列表

适用范围:仅列表模板 list_htm

基本语法:

{dede:list col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby='' pagesize='' orderway=''}{/dede:list}

参数说明:

col='' 内容列数

titlelen='' 标题长度

infolen='' 内容摘要长度

imgwidth='' 缩略图宽

imgheight='' 缩略图高

orderby='' 排序方式,有效的排序方式有 senddate、pubdate、id、click、lastpost、postnum ,默认为 sortrank

pagesize='20' 分页大小

底层模板字段:

ID(同 id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,

source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,

description(同infos),filename, image, imglink, fulltitle, textlink, typelink,plusurl, memberurl, templeturl,

stime(pubdate 的"0000-00-00"格式)

注:list标记除了支持档案表的基本模板变量外,还支持附加表的字段,你可以在模型管理中知道附加表支持列表使用的字段有哪些。

<tr>

{dede:arclist addfields='sjdz,yysj' channelid='1' row='10' orderby='sendate'}

<td>商家地址:[field:sjdz/]</td>

<td>营业时间:[field:yysj/]</td>

{/dede:arclist}

</tr>

有些参数是我随意加上去的,关键是addfields和channelid,addfields里面是你的自定义字段,channelid如果是普通文章就是1,其他后台有,根据需要改。

您好,您这样:

以普通文章频道中新建字段为例:添加“问题答案”字段名称 "daan"点击核心-频道模型-内容模型管理-普通文章

点击 字段管理-添加新字段

依次填写:

(1)表单提示文字:问题答案

(2)字段名称:daan

(3)字段类型:选择 系统自动生成表单字段

(4)数据类型:多行文本

(5)最大长度:1000

点击确定

回到 字段管理页面 如图所示

点击 基本设置

找到 列表附加字段,填入新建字段 daan ,用英文逗号隔开

点击 确定

新建客户问答栏目-编辑问题、答案

问答列表调用代码:

自定义字段在栏目列表中掉用{dede:list pagesize='3'addfields='daan'}

<li >

<a href="[field:arcurl/]">[[field:title/]]</a>

<p> 答案:[field:daan function='cn_substr(@me,270)'/] </p>

</li>

{/dede:list}自定义字段在首页调用:channelid是内容模型的ID号,文章的ID是 "1"{dede:arclist addfields='daan' row='3' channelid='1'}

<a href="[field:arcurl/]">[[field:title/]]</a>

<p> 答案:[field:daan function='cn_substr(@me,30)'/] </p>

{/dede:arclist}

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎么让dedecms搜索页面支持标签调用及自定义字段调用

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情