织梦园模板网专注于织梦企业模板、DeDe整站模板、织梦Html5模板等织梦模板的下载,提供DEDE织梦模板相关服务。织梦园织梦模板交流群
用户名:
密码:
注册
注册后享受折扣价

channelartlist调用typeid按照顺序排列

织梦园模板 / 2019-01-25 / 收藏
      织梦调用栏目会按照默认的栏目ID的顺序(如果在后台“网站栏目管理”中设置了栏目排序的话就会按照设置的顺序)来进行排序,但是有时候我们需要按照各自的需求对调用的栏目进行排序,这个时候就需要对织梦程序源码做一下修改。
注意:在5.7 SP2版本下,此方法无效,会出错,请谨慎修改!
在任何对织梦源程序文件进行修改的操作之前请务必做好备份。
 
打开/include/taglib/channelartlist.lib.php
找到
$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");
 
比如修改之前:
  {dede:channelartlist typeid="1,3,2,5,4"}
    {dede:field.typename/}
  {/dede:channelartlist}
 
  栏目一
  栏目二
  栏目三
  栏目四
  栏目五
这样并没有发生变化。
 
修改之后的效果就是这样:
  {dede:channelartlist typeid="1,3,2,5,4"}
    {dede:field.typename/}
  {/dede:channelartlist}
 
  栏目一
  栏目三
  栏目二
  栏目五
  栏目四
这样自己定义的顺序来排序。

相关织梦技巧

收缩