相信大家對DEDE5.6 DEDE5.7的站內搜索非常失望吧,U盤量產網也一樣,雖然已經優化了讓搜索結果按標題匹配,但比如搜索“金士頓”的時候會出現非常多有金士頓關鍵字的文章,完全是按最新發布時間排序,也就是說最新發布的顯示在最前面,問題來了,大家想要搜索的結果都是大家都需要的結果,但最新發布的不一定是需要的,而幾頁的搜索結果讓用戶無所適從;
如何解決呢,U盤量產網想到了按點擊量來排序搜索結果,當然首先百度谷歌下有沒有人遇到同樣的問題,失望的是網上大多數的教程均為DEDE老版本的教程, 完全不能用,首先/include/inc_arcsaerch_view.php在新版本的DEDE織夢程序里根本找不到了,新版本的站內搜索PHP文 件其實是/include/arc.searchview.class.php,其次是$this->OrderBy = 'dede_full_search.aid desc';代碼在新版本的arc.searchview.class.php文件里根本找不到,也就不能按網上的教程修改了;
怎么辦呢?問題肯定是可以被解決的,我發現在arc.searchview.class.php文件467行“排序方式”注釋下面是搜索結果排序代碼,怎么解決呢!請教了高高手,解決方式如下:
在/include/arc.searchview.class.php文件467行“//排序方式”注釋下面 “//搜索”注釋以上的代碼改成如下代碼:
$ordersql = '';
if($this->ChannelType< 0 ||$this->ChannelTypeid< 0){
if($orderby=="id"){
$ordersql="order by arc.aid desc";
}else if($orderby=="senddate"){
$ordersql="order by arc.senddate desc";
}else{
$ordersql=" order by arc.click desc";
}
}else{
if($orderby=="senddate")
{
$ordersql=" order by arc.senddate desc";
}
else if($orderby=="pubdate")
{
$ordersql=" order by arc.pubdate desc";
}
else if($orderby=="id")
{
$ordersql=" order by arc.id desc";
}
else
{
$ordersql=" order by arc.click desc";
}
}
測試一下是不是解決了呢:如下圖所示
趕緊修改你的搜索代碼,優化織夢的搜索結果大大提高用戶體驗吧!
本文為U盤量產網原創 轉載請保留此鏈接
申請創業報道,分享創業好點子。點擊此處,共同探討創業新機遇!