一个资源分享、信息整合的综合性站点。

标题: 织梦如何在文章的第一页显示摘要 [打印本页]

作者: 树苗收集系    时间: 2020-12-27 15:08
标题: 织梦如何在文章的第一页显示摘要
其实在织梦dedecms前台显示的时候,所有对文章内容的解析都是通过 /include/arc.archives.class.php 进行处理的,所有列表页的解析都是通过 /include/arc.listview.class.php进行处理的,

所以我们得走arc.archives.class.php里面去找。  要想读懂织梦模板里面的全部代码,还是有一些难度,反正我是还没有完全把里面的代码搞懂。

我还是直接说方法吧,打开 /include/arc.archives.class.php  
找到ParseDMFields方法,在方法里面把
  1. if($pageNo>1) $this->Fields['description'] = trim(preg_replace("/[\r\n\t]/", ' ', cn_substr(html2text($this->Fields[$this->SplitPageField]), 200)));
复制代码
修改成
  1. if($pageNo>1) $this->Fields['description'] = '';
复制代码
它这里的意思就是,当页数大于0的时候 摘要就为空。 修改之后的结果就是
  1. $this->NowPage = $pageNo; $this->Fields['nowpage'] = $this->NowPage; if($this->SplitPageField!='' && isset($this->Fields[$this->SplitPageField])) { $this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1]; //if($pageNo>1) $this->Fields['description'] = trim(preg_replace("/[\r\n\t]/", ' ', cn_substr(html2text($this->Fields[$this->SplitPageField]), 200))); if($pageNo>1) $this->Fields['description'] = ''; }
复制代码
然后在模板调用的调用:
  1. {dede:field.description runphp='yes'} if(@me<>'' )@me = '<div class="intro">'.@me.'</div>'; {/dede:field.description}
复制代码



作者: 撒哈拉的泪    时间: 2020-12-29 15:44
谢谢楼主,,,收藏ing
作者: 树上的向日葵    时间: 2021-1-12 16:24
嘻嘻不错支持一个
作者: 天使爱上吸血鬼    时间: 2021-3-26 08:57
路过还不错




欢迎光临 一个资源分享、信息整合的综合性站点。 (https://www.sorv.cn/) Powered by Discuz! X3.4