首頁 > CMS教程 > DEDECMS > 主體

dedecms文章列表頁如何實現按權重排序

發布: 2019-07-20 13:10:23
原創
2139 人瀏覽過

dedecms文章列表頁如何實現按權重排序

當我們想把清單頁的文章依照我們指定規律排序的時候,往往都需要自己修改程式碼來實作。如果只是想把單獨某篇或某幾篇文章排在前面的話,那麼可以在程式碼中‍先調用一篇或幾篇帶推薦屬性的文章,剩下內容再調用不帶推薦屬性的文章,預設按時間排序即可。但是我們有大量文章需要排在指定位置時,需要怎麼處理呢?最好的方法就是設定成按權重排序。以下跟大家分享dedecms文章列表頁如何實作按權重排序的方法。

dede:list按權重排序的方法:

找到"根目錄\include\arc.listview.class.php"檔案。

dedecms文章列表頁如何實現按權重排序

修改程式碼:在檔案第727行處新增如下按weight排序判斷程式碼:

dedecms文章列表頁如何實現按權重排序

再在第778行處找到此段程式碼if(preg_match('/hot|click|lastpost/', $orderby)) ,新增|weight/部分。

dedecms文章列表頁如何實現按權重排序

標籤呼叫:{dede:list orderby='weight' orderway='asc'},這樣{dede:list}標籤就實作了以權重排序的呼叫。

dedecms文章列表頁如何實現按權重排序

dede:arclist依權重排序的方法:

dedecms文章列表頁如何實現按權重排序

在74 、75行找到以下程式碼:

 // arclist是否需要weight排序,預設為"N",如果需要排序則設定為"Y"     $isweight = $ctag->GetAtt('isweight');

把這行修改為:

 $weight = $ctag->GetAtt('weight');

dedecms文章列表頁如何實現按權重排序

在327行插入下面這行程式碼:

     else if($orderby == 'weight') $ordersql = "  order by arc.weight asc";

dedecms文章列表頁如何實現按權重排序

標籤呼叫:{dede:arclist orderby='weight'},這樣{dede:arclist}標籤就實作了依權重排序的呼叫。

dedecms文章列表頁如何實現按權重排序

更多DedeCMS相關技術文章,請造訪DedeCMS教學欄位學習!

以上是dedecms文章列表頁如何實現按權重排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!