DEDECMS织梦模板搜索结果按点击排序的代码教程
来源:本站原创|时间:2021-08-05|栏目:dedecms|点击: 次
相信大家对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"; } }
测试一下是不是解决了呢:如下图所示
赶紧修改你的搜索代码,优化织梦的搜索结果大大提高用户体验吧!
上一篇:DEDECMS 织梦模板 sonchannel 子栏目标签的使用教程
栏 目:dedecms
本文标题:DEDECMS织梦模板搜索结果按点击排序的代码教程
本文地址:https://www.xiuzhanwang.com/a1/dedecms/16570.html
您可能感兴趣的文章
- 08-05Dedecms文件目录结构解说(能知道织梦每个文件有什么用)
- 08-05Dedecms5.7版ckeditor网页编辑器添加中文字体
- 08-05织梦DedeCMS获取当前栏目文章数量
- 08-05织梦模板如何添加和调用自定义字段的方法
- 08-05DedeCMS后台模块列表显示空白的解决办法
- 08-05DedeCMS自定义字段图片调用的问题{dede:img ...}解决方法
- 08-05织梦DedeCMS调用显示discuz里面主题的方法
- 08-05限制织梦会员每天投稿数量方法
- 08-05常用的织梦dedecms安全设置集合整理
- 08-05织梦教程:后台编辑器添加中文字体方法