职业规划

DEDE5.6织梦5.7搜索结果按点击排序 最新可用代码
fgbev4340 2024-6-25 11:10:38 |阅读模式
  • DEDE5.6织梦5.7搜索结果按点击排序 最新可用代码 ...

    smokpzfapp
    2024-6-25 11:10:38
    0回复 | 4查看
    相信大家对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盘量产网原创 请保留此链接
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投稿精彩视频

Powered by Discuz! X3.4© 2001-2017 Discuz Team.

快速回复 返回顶部 返回列表