DEDECMS调用特定ID文章内容的实现方法
发布时间:2010-11-04 15:42:56 作者:佚名 我要评论
DEDECMS调用特定ID文章内容的实现方法,需要的朋友可以参考下。
方法一:
找到:include\inc_arcpart_view.php文件,在里面找到第function ParseTemplet();这一个函数里面的
〔
$this->dtp->Assign($tagid,
$this->GetArcList($typeid,$ctag->GetAtt("row"),$ctag->GetAtt("col"),
$titlelen,$infolen,$ctag->GetAtt("imgwidth"),$ctag->GetAtt("imgheight"),
$ctag->GetAtt("type"),$orderby,$ctag->GetAtt("keyword"),$innertext,
$ctag->GetAtt("tablewidth"),0,"",$channelid,$ctag->GetAtt("limit"),$ctag->GetAtt("att"),
$ctag->GetAtt("orderway"),$ctag->GetAtt("subday"),$autopartid,$ctag->GetAtt("ismember")
)
〕
将里面的红色的0改为$ctag->GetAtt('arcid'),就行了,然后到incclude\inc\inc_fun_spgetarclist.php文件里面找到
〔if($arcid!=0) $orwhere .= " And arc.ID<>'$arcid' ";〕
将这一句改为:if($arcid!=0) $orwhere .= " And arc.ID='$arcid' ";
if($arcid==0) $orwhere .= " And arc.ID<>'$arcid' ";
以上两句,替换掉上面需要替换的语句。然后就可以调用了:如在主页中调用ID号为145的文章内容:
{dede:arclist arcid='145' row='5' col='1' titlelen='24' }
<table width='100%' border='0' cellspacing='2' cellpadding='2'>
<tr>
<td>[field:title/]
[field:info/]</td>
</tr>
</table>
{/dede:arclist}
这样就只会调用到一个ID为145的文章,即始ROW设为5也没有用,因为从数据库里面只提出一条记录来,
但是现在还不能解析HTML语法,提出来的文章没有版式,下次改进。
方法二:
刚一开始没有仔细看论坛,所以自已写出这样的方法,其实大可不必按以上的方法做,可以借助强大的LOOP来实现这一种需求,现将个人方法写在下面,希望对需要的人有帮助;
在首页模板里面加入如下代码:
{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'}
[field:body/]
<hr>
[field:body function="Html2Text(cn_substr('@me',200))" /]
{/dede:loop}
注意下面的这一行:
{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'}
其中有一个aid=524代表要取文章列表的ID号为524的文章,
table='dede_addonarticle' 为所存文章的表
其中中间的这一行最重要,
[field:body function="Html2Text(cn_substr('@me',200))" /]
这一句有多种调用方式:
如:[field:body/]将得到文章所有的内容,不过滤HTML标记
[field:body function="(cn_substr('@me',200))" /]
只取内容的前200个字符
[field:body function="Html2Text(cn_substr('@me',200))" /]
取前200个字符并把HTML标记过滤
其实DEDECMS真的很强大,偶算是领教了。
找到:include\inc_arcpart_view.php文件,在里面找到第function ParseTemplet();这一个函数里面的
复制代码
代码如下:〔
$this->dtp->Assign($tagid,
$this->GetArcList($typeid,$ctag->GetAtt("row"),$ctag->GetAtt("col"),
$titlelen,$infolen,$ctag->GetAtt("imgwidth"),$ctag->GetAtt("imgheight"),
$ctag->GetAtt("type"),$orderby,$ctag->GetAtt("keyword"),$innertext,
$ctag->GetAtt("tablewidth"),0,"",$channelid,$ctag->GetAtt("limit"),$ctag->GetAtt("att"),
$ctag->GetAtt("orderway"),$ctag->GetAtt("subday"),$autopartid,$ctag->GetAtt("ismember")
)
〕
将里面的红色的0改为$ctag->GetAtt('arcid'),就行了,然后到incclude\inc\inc_fun_spgetarclist.php文件里面找到
〔if($arcid!=0) $orwhere .= " And arc.ID<>'$arcid' ";〕
将这一句改为:if($arcid!=0) $orwhere .= " And arc.ID='$arcid' ";
if($arcid==0) $orwhere .= " And arc.ID<>'$arcid' ";
以上两句,替换掉上面需要替换的语句。然后就可以调用了:如在主页中调用ID号为145的文章内容:
复制代码
代码如下:{dede:arclist arcid='145' row='5' col='1' titlelen='24' }
<table width='100%' border='0' cellspacing='2' cellpadding='2'>
<tr>
<td>[field:title/]
[field:info/]</td>
</tr>
</table>
{/dede:arclist}
这样就只会调用到一个ID为145的文章,即始ROW设为5也没有用,因为从数据库里面只提出一条记录来,
但是现在还不能解析HTML语法,提出来的文章没有版式,下次改进。
方法二:
刚一开始没有仔细看论坛,所以自已写出这样的方法,其实大可不必按以上的方法做,可以借助强大的LOOP来实现这一种需求,现将个人方法写在下面,希望对需要的人有帮助;
在首页模板里面加入如下代码:
复制代码
代码如下:{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'}
[field:body/]
<hr>
[field:body function="Html2Text(cn_substr('@me',200))" /]
{/dede:loop}
注意下面的这一行:
{dede:loop table='dede_addonarticle' sort='aid' row='8' if='aid=524'}
其中有一个aid=524代表要取文章列表的ID号为524的文章,
table='dede_addonarticle' 为所存文章的表
其中中间的这一行最重要,
[field:body function="Html2Text(cn_substr('@me',200))" /]
这一句有多种调用方式:
如:[field:body/]将得到文章所有的内容,不过滤HTML标记
[field:body function="(cn_substr('@me',200))" /]
只取内容的前200个字符
[field:body function="Html2Text(cn_substr('@me',200))" /]
取前200个字符并把HTML标记过滤
其实DEDECMS真的很强大,偶算是领教了。
相关文章
织梦dedecms安全漏洞include/common.inc.php漏洞解决方法
据悉DEDECMS的全局变量初始化存在漏洞,可以任意覆盖任意全局变量,下面是具体的解决方法,需要的朋友可以参考下2021-05-13- 最近因为使用的dede系统考虑后期数据量大的问题,所以提前将dedecms优化一下,应对后期数据量大导致后台卡等问题,这里为大家分享一下,主要是思路对于新版本的dedecms需要2021-05-12
DedeCMS大数据负载性能优化方案(简单几招让你提速N倍)
今天我们分享一下DedeCMS数据负载性能优化的方法,因为目前70w条记录,导致站点后台查询慢,生成HTML也很吃力,经过下面的优化确实可以提升不少2021-05-12mysql织梦索引优化之MySQL Order By索引优化
最近基于mysql数据库的织梦系统查询与生成静态页面比较慢,所以想优化一下索引试试能不能提高一下执行效率下面是具体的实现步骤,需要的朋友可以参考一下2021-05-12织梦dedecms页面空白后开启错误信息提示功能方便调试错误
织梦后台空白、织梦后台左侧空白等相关问题,如果没有报错提示信息,不显示任何内容,对新手来说摸不着头脑,无从下手,开启织梦错误信息提示错误调试设置,让程序告诉我们2021-05-12- 最近考虑用dedecms做个大数据量的网站,为什么用dedecms呢因为这个系统特别好用,但负载是软肋,很多功能只能自己动手实现了,下面就为大家分享一下具体的方法2021-05-12
- 这篇文章主要介绍了加固版织梦CMS整站源码通用安装教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-03-17
- 这篇文章主要介绍了织梦DEDECMS robots优化设置的具体方法,DEDECMS自带的robots.txt文件设置很简单,并不能完全满足网站的优化要求,需要的朋友可以参考下本篇方法2020-12-02
- 这篇文章主要介绍了Dedecms网站Title标签SEO优化方法,主要涉及到如何实现"三级栏目_二级栏目_一级栏目_网站名称"的问题,需要的朋友可以参考下小编的方法2020-12-02
dedecms文章关键字(自动内链)php5.5以上版本urf-8失效的解决方法
这篇文章主要为大家详细介绍了dedecms文章关键字(自动内链)php5.5以上版本urf-8失效的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏2020-11-18
最新评论