在使用Dedecms CMS构建网站时,调用相关文章标签`likearticle`只能匹配具有相同关键词的文章。如果需要在整个站点范围内调用,每个文档都需要手动添加关键字,这无疑增加了工作量。许多人希望直接调用同级栏目中的文章。以下方法可以帮助您解决这一问题。




一、首先找到:
//处理标记属性、innertext
$attlist = 'typeid|0,row|20,cacheid|';

将其替换为:
//处理标记属性、innertext
$attlist = 'typeid|0,row|20,cacheid|,type|';

二、接下来找到:
if($typeid==0 || $typeid=='top')
{
$tpsql = " reid=0 AND ispart<>2 AND ishidden<>1 AND channeltype>0 ";
}

替换为:
if($type=='self') //调用同级栏目文章内容
{
$reid = $refObj->TypeLink->TypeInfos['reid'];
$tpsql = " reid='$reid' AND ispart<>2 AND ishidden<>1 ";
}
else if($typeid==0 || $typeid=='top')
{
$tpsql = " reid=0 AND ispart<>2 AND ishidden<>1 AND channeltype>0 ";
}

三、最后,调用标签如下:
{dede:channelartlist row='1' type ='self' }
{dede:arclist titlelen='600' orderby='pubdate' row='4'}
[field:title/]
{/dede:arclist}
{/dede:channelartlist}

标签说明:channelartlist里的row控制循环栏目的个数(同级栏目的个数),arclist里的row控制同级单个栏目的文章个数。如果想要调用推荐之类的热门文章,可以在arclist里面加入flag标签,这样就实现了调用同级栏目里指定文章的功能。
通过以上步骤,您可以轻松实现Dedecms中同级栏目文章的调用功能,大大简化了操作流程,提升了网站管理效率。记得在修改任何代码之前备份原始文件,以防止意外情况发生。希望这些技巧对您的网站开发有所帮助!