织梦channelartlist按指定的typeid排序

2021-06-23 dedecms教程
  • 文章介绍
我们在用到channelartlist标签时候,有时候需要按照typeid进行排序,比如我们想要按照17,4,8这样依次输出,但是默认的会按照4,8,17进行排序。我们想要按照17,4,8这样排,要怎么处理?
 
 {dede:channelartlist typeid='17,4,8'}
<h3><a href="{dede:field.typeurl/}">{dede:field.typename/}</a></h3>
{/dede:channelartlist}
 
找到 \include\taglib\channelartlist.lib.php 文件,第 78 行,找到如下代码:
 
$dsql->SetQuery("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath   
FROM `dede_arctype` WHERE $tpsql ORDER BY sortrank ASC LIMIT $totalnum");  
 
修改为代码:
 
$dsql->SetQuery("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,  
siteurl,sitepath FROM `dede_arctype` WHERE $tpsql ORDER BY FIELD(id,$typeid) LIMIT $totalnum");  
 
就可以根据 typeid 排序了。或者直接替换该文件。
 

上一篇:织梦DEDECMS如何修改缩略图地址长度

下一篇:织梦后台栏目名称及栏目文件保存目录长度修改

跟版网模板,累计帮助5000+客户企业成功建站,为草根创业提供助力!

立刻开启你的建站之旅