dedecms列表调用文章内容_dedecms列表调用文章正文内容方法

时间:2019-01-27  来源:dedecms教程  阅读:

  在制作织梦模板的时候,有的时候我们需要调用文章部分内容,用[field:description/]标签字数不够多(数据库设计字段是varchar(255)的),另外修改了文章内容但是摘要还需要手动修改,所以只能调用文章正文内容了。
      实现织梦DedeCMS列表页调用文章正文的方法有两种,不过都是使用的dede:arclist标签,如果使用dede:list标签的话,第一种方法是调用不出结果的。

以下是织梦DedeCMS列表页调用文章正文的第一种方法:  

 代码如下

 {dede:arclist flag="h" row="10′}

   

[field:title/]

   

[field:id runphp="yes"] $aid = @me; $row = $GLOBALS["dsql"]->GetOne("Select body From "dede_addonarticle" where aid="$aid" "); @me =

cn_substr(strip_tags("{$row["body"]}"),400);[/field:id]【阅读详细】

     {/dede:arclist}

代码中的数字400是用来设置需要调用多少内容的,因为调用的是body里面的内容,如果有里面包含代码的话也会被调用出来,这点比较不好,不过可以使用html2tex()函数解决一下。  

 

第二种方法则是利用了织梦可以自定义模型内容数据,并调用的原理,把文章模板的body字段看做在自定义的。调用的代码如下  

 代码如下

 {dede:arclist row="10" addfields="body" channelid="1"}

  [field:body function="cn_substr(html2text(@me),600)"/]...

                          
        
{/dede:arclist}

 以下是这种方法的详细说明:  

1.addrields=”字段一,字段二…”

2.idlist:文章编号,调用指定内容

3.function=’cn_substr(html2text(@me),600)’ 将文章内容转化为文字格式

4.channelid,模型编号,文章默认为1,查看位置:后台–核心–内容模型管理

两种方法各有优劣,第一种方法比较繁琐,不是那么容易看懂。还是比较推荐采用第二种方法实现织梦DedeCMS列表页调用文章正文的功能的。

谁说dede:list 标签不能调用body内容,现在就告诉你,直接就可以调用

第一步,打开后台 核心-->频道模型-->内容模型管理-->普通文章,

              在列表附加字段中添加body

第二步,在dede:list语句中指定addfields="body",然后直接用[field:body/]调用全部内容。

 

例:

 代码如下 {dede:list pagesize="18" addfields="body"}

[field:body/]


[field:title/]



{/dede:list}

另外,如果像摘要一样调用可以用

 代码如下

[field:body function="cn_substr(html2text(@me),200)"/]替代:[field:description /],

调出文章前200个字符内容。

经过这两步,可以彻底关掉系统默认的文章摘要功能。


最后还有就是官方的一个[field:description/]字段了,这个如果对于要求几十个字的完全可以了,但是如果太多字此字段就无效了。

dedecms列表调用文章内容_dedecms列表调用文章正文内容方法

http://m.bbyears.com/wangyezhizuo/47577.html

推荐访问:
相关阅读 猜你喜欢
本类排行 本类最新