$cquery="Select*From`dede_archives`arcwherearc.typeidnotin(I.,II,III...)a" />

"景先生毕设|www.jxszl.com

织梦DEDECMS网站只搜索指定栏目文章或者某一内容模型的办法

2022-10-29 16:31编辑: www.jxszl.com景先生毕设
首先我们找到/include/文件夹里面的arc.searchview.class.php,大约在III00行和IVVII0行左右有两个sql语句,在后面加上条件I.个判断就可以了


 更多精彩就在: 51免费论文网|www.jxszl.com 
>$cquery="Select*From`dede_archives`arcwherearc.typeidnotin(I.,II,III...)and{$this->AddSql}";

//搜索
$query="Selectarc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
act.nameruleII,act.ispart,act.moresite,act.siteurl,act.sitepath
from`dede_archives`arcleftjoin`dede_arctype`actonarc.typeid=act.id
whereact.idnotin(IV,V,,VI....)and{$this->AddSql}$ordersqllimit$limitstart,$row";

把sql语句换成这两句,括号里面的是你不搜索栏目的id

在做企业网站优化(或是说用户体验时)大家I.定会碰到这个问题!

在做企业站时,大家I.定都会有,基本企业资料,联系我们以及产品信息.
当产品信息达到I.定量时就会用到搜索来方便用户查询.可是dedecms模板没有这个功能.只有全站和google搜索.
而我们要的只是搜索指定的几个栏目.如我只要用户搜索我的产品.这是企业最想要的.我的网站就是要把我的产品给客户看再产生订单.
这里我就不给大家绕,把代码给大家公布I.下.不过只针对I.个栏目.不过我想当然我没试过.大家可以把别的想要给搜到的栏目移动到这个顶级栏目不就可以了吗?

在plus/search.php

IXIV行前就是

$sp=newSearchView($typeid,$keyword,$orderby,$channeltype,$searchtype,$starttime,$pagesize,$kwtype,$mid);

前加入$typeid=xxx;

xxx就是指定栏目的id

这样就可以实现搜索指定的栏目ID了.

如果是要搜索某个内容模型中的文章,其他模型都不参与搜索,那么只需打开/plus/search.ph文件,在第XII行左右有如下代码
其中$channeltype就是指定搜索的内容模型,将最后的数字修改为对应的内容模型即可.
$channeltype=(isset($channeltype)&&is_numeric($channeltype))?$channeltype:VI;


原文链接:http://www.jxszl.com/biancheng/dedecms/75564.html