首頁 > CMS教程 > DEDECMS > dede專題節點文章怎麼按id類型排序

dede專題節點文章怎麼按id類型排序

藏色散人
發布: 2019-12-20 10:34:39
原創
2724 人瀏覽過

dede專題節點文章怎麼按id類型排序

dede專題節點文章怎麼依照id型別排序?

dede專題節點文章按id,點擊等類型排序

使用dedecms弄一個專題,添加內容髮現內容標題不是按照添加的id排序的,也不是按照id順序排列的。感覺像是隨機的

  推薦學習:織夢cms

依照 標題的id  降序排列。

這個效果需要修改2 個php檔。

第一個步驟:

1. 修改  includetaglibchannelspecialtopic.lib.php  檔案

2. 在第52行處有這行程式碼:

 $ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'default', $keywords, $listTemplet, 0, $idlist,
登入後複製

修改成:

 $ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'asc', $keywords, $listTemplet, 0, $idlist,
登入後複製

3. 儲存檔案結束

第二步驟:

1.修改includetaglibarclist.lib.php

##2. 大約在196行處。有這行程式碼:

  //文档排序的方式
    $ordersql = '';
    if($orderby=='hot' || $orderby=='click') $ordersql = " order by arc.click $orderWay";
    else if($orderby == 'sortrank' || $orderby=='pubdate') $ordersql = " order by arc.sortrank $orderWay";
    else if($orderby == 'id') $ordersql = "  order by arc.id $orderWay";
    else if($orderby == 'near') $ordersql = " order by ABS(arc.id - ".$arcid.")";
    else if($orderby == 'lastpost') $ordersql = "  order by arc.lastpost $orderWay";
    else if($orderby == 'scores') $ordersql = "  order by arc.scores $orderWay";
    else if($orderby == 'rand') $ordersql = "  order by rand()";
    //增加  开始
           else if($orderby == 'asc') $ordersql = "  order by arc.id asc";
    //增加 结束
    else $ordersql = " order by arc.sortrank $orderWay";
登入後複製

3.  修改結束

下面再給一個實作方法

1、找到include/taglib//channel/specialtopic.lib.php 

2、將require_once(DEDEINC.'/taglib/arclist.lib.php'); 換成require_once(DEDEINC.'/taglib/arclist.lib2.php'); 

3、

3、複製arclist.lib.php 改名為arclist.lib2.php 

然後修改arclist.lib2.php 

查找$order='desc' 替換成$orderby='id' 

仿站關於是升序還是降序排列只需要 

查找$orderWay = AttDef($order,'desc'); 替換成$orderWay = AttDef($order,'asc'); 

想呼叫以下參數,只需按著修改就行 

§ orderby='hot' 或 orderby='click' 表示按点击数排列 
§ orderby='sortrank' 或 orderby='pubdate' 按出版时间排列 
§ orderby='near' 
§ orderby=='lastpost' 按最后评论时间 
§ orderby=='scores' 按得分排序 
§ orderby='id' 按文章ID排序 
§ orderby='rand' 随机获得指定条件的文档列表
登入後複製

對於dedecms 5.1的版本

id排序增加功能更 ###
include/inc/.inc_fun_SpFullList.php
//文档排序的方式 
$ordersql = ""; 
if($orderby=='rand') $ordersql = " order by rand()"; 
else if($orderby=='click'||$orderby=='hot') $ordersql = " order by arcf.click desc"; 
else if($orderby=='digg') $ordersql = " order by arcf.digg desc"; 
else if($orderby=='diggtime') $ordersql = " order by arcf.diggtime desc"; 
else $ordersql=" order by arcf.aid desc"; 
// 2013年针对专题id列表所加功能 
if($idlist!=''){ 
$ordersql = " order by find_in_set(arcf.aid,'$idlist')"; 
}
登入後複製

以上是dede專題節點文章怎麼按id類型排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板