主頁(yè) > 網(wǎng)站建設(shè) > 建站知識(shí) > 織夢(mèng)DedeCMS相關(guān)文章中實(shí)現(xiàn)orderby參數(shù)排序

織夢(mèng)DedeCMS相關(guān)文章中實(shí)現(xiàn)orderby參數(shù)排序

POST TIME:2017-11-13 00:33

  織夢(mèng)DedeCMS的相關(guān)文章是豐富網(wǎng)站內(nèi)容非常強(qiáng)大的功能,它能夠把網(wǎng)站中內(nèi)容相關(guān)的文檔進(jìn)行有效的整合,這點(diǎn)對(duì)用戶(hù)體驗(yàn)和搜索引擎都是非常友好的。不過(guò)織夢(mèng)DedeCMS的相關(guān)文章標(biāo)簽,沒(méi)有像織夢(mèng)DedeCMS的dede:arclist標(biāo)簽一樣強(qiáng)大,可以進(jìn)行排序操作。怎么實(shí)現(xiàn)織夢(mèng)DedeCMS相關(guān)文章的按orderby參數(shù)排序呢?

  織夢(mèng)DedeCMS相關(guān)文章中實(shí)現(xiàn)orderby參數(shù)排序

  原理上來(lái)說(shuō),只是在SQL語(yǔ)句上進(jìn)行一下排序就可以了,我們完全可以借鑒織夢(mèng)dede:arclist標(biāo)簽的排序功能。以下的代碼目前僅使用了pubdate和click排序,其他的沒(méi)測(cè)試,不知道是否可用。具體的操作步驟是修改\include\taglib\likearticle.lib.php文件。

  上述文件就是織夢(mèng)DedeCMS相關(guān)文章標(biāo)簽的定義文件,進(jìn)行操作之前,建議先備份該文件。找到如下的這段代碼,并把它刪除:

1
2
3
4
5
6
7
if( empty($arcid) || $byabs==0 )
{
$orderquery = " ORDER BY arc.id desc ";
}
else {
$orderquery = " ORDER BY ABS(arc.id - ".$arcid.") ";
}

  然后找到約第13行處的如下代碼:

1
$revalue = '';

  在上面的代碼下面添加如下代碼:

1
2
3
4
if($orderby=='hot' || $orderby=='click') $orderquery = " order by arc.click desc";
else if($orderby == 'sortrank' || $orderby=='pubdate') $orderquery = " order by arc.sortrank desc";
else if($orderby == 'id') $orderquery = " order by arc.id desc";
else if($orderby == 'rand') $orderquery = " order by rand()";

  以上代碼主要是添加排序的參數(shù),這里注意末尾的desc你可以自己改成asc這兩個(gè)是降序和升序排列,如果你想用orderWay做參數(shù),那就自己加代碼吧。如果想要更多的排序功能,可以參考dede:arclist標(biāo)簽的定義文件處理。



上一篇:織夢(mèng)按欄目分類(lèi)搜索的方法

下一篇:織夢(mèng)DedeCMS未審核文章更新為當(dāng)前時(shí)間

收縮
  • 微信客服
  • 微信二維碼
  • 電話(huà)咨詢(xún)

  • 400-1100-266