织梦dedecms实现调用相关文章时排除当前文章
本文主要介绍了织梦dedecms实现调用相关文章时排除当前文章,使用这个标签{dede:likearticle}就可以这个功能,把教程里面的代码放到模板里就可以了,推荐给想要制作此类功能的朋友。
当我们发表一篇文章时,为了增加用户的停留时间,我们通常会在文章的末尾或适当的位置调用与本文相关的文章,以赢得用户的再次点击,通常使用这个标签{dede:likearticle},代码的原理是通过识别文章的标题、类别、关键词等来判断相似度来推荐。
解决方法:
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 $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 $orderquery limit 0, $row";
}
从上面的代码可以看到,织梦dedecms为了排除本文在程序一开头就试图过滤本文(AND arc.id<>'$aid' "),但是没成功,那怎么才能成功排除当前文章呢?很简单,我们在这段代码:AND ($keyword) $typeid 重新排除一次就可以,两段代码都要加,改完之后如下(注意看绿色加粗代码的地方有什么不同):
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";
}
到此,大功告成,赶紧去试试吧。
以上就是关于织梦相关文章的所有内容,希望可以帮到大家,欢迎扫码加微信一起交流~
TAG标签:织梦相关文章
上一个:织梦dedecms如何实现taglist调用自定义字段
下一个:织梦dedecms如何实现文章排行榜代码