织梦dedecms调用相关文章时怎么排除当前文章

92建站   2021-05-21   收藏本文

本文介绍了织梦dedecms调用相关文章时怎么排除当前文章,教程给出了具体的代码,打开这个文件likearticle.lib.php,找到旧代码改为教程给出的新代码就可台了。

一般来说,为了增加用户的停留时间,在文章的末尾和适当的位置调用与本文相关的文章,获得用户的再点击,该代码的原理是通过识别文章的标题、类别、关键键词等来判断相似度来推荐,不过有时会重复调用当前文章,那么织梦dedecms调用相关文章时怎么排除当前文章呢,一起来看看。

直接上代码:

打开/include/taglib/likearticle.lib.php,找到下面的代码,找到这段代码:

if($keyword != '')

{

……

WHERE arc.arcrank>-1 AND $typeid $orderquery limit 0, $row";

 }

修改为:

if($keyword != '')

{

if(!empty($typeid)) {

$typeid ="AND arc.typeid IN($typeid) AND arc.id<>'$aid' ";

}

$query = "SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,

tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath

FROM `dede_archives` arc LEFT JOIN `dede_arctype` tp ON arc.typeid=tp.id

where arc.arcrank>-1 AND ($keyword) $typeid AND arc.id<>'$aid' $orderquery limit 0, $row";

}

else

{

if(!empty($typeid)) {

$typeid = " arc.typeid IN($typeid) AND arc.id<>'$aid' ";

}

$query = "SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,

tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath

FROM `dede_archives` arc LEFT JOIN `dede_arctype` tp ON arc.typeid=tp.id

WHERE arc.arcrank>-1 AND $typeid AND arc.id<>'$aid' $orderquery limit 0, $row";

}

放到模板里面使用就可以了。

上面就是织梦排除当前文章的介绍,若有疑问可以找小编进一步探讨交流~

展开