主页 > 网站建设 > 建站知识 > 织梦按栏目分类搜索的方法

织梦按栏目分类搜索的方法

POST TIME:2017-11-13 00:33

  织梦DedeCMS的搜索功能,默认情况下只搜索文章标题,而且是全站搜索。如果想改为搜索其他字段或者全文搜索,就需要修改织梦DedeCMS的设置,全文搜索还需要配置Sphinx服务器,不过对于大部分网站来说,全文搜索没有必要。

  今天来分享一下如何解决织梦DedeCMS的分类搜索功能。分类搜索可以让用户更快的找到他想要的内容,这点对增强用户体验是非常有帮助的。实现的办法也不难,主要是要向织梦DedeCMS的搜索文件search.php文件传入分类id的值。

  以织梦DedeCMS的默认模板为例,把默认模板文件夹中的head.htm文件的如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
<form action="{dede:field name='phpurl'/}/search.php" name="formsearch">
<div class="form">
<h4>搜索</h4>
<input type="hidden" name="kwtype" value="0" />
<input name="keyword" type="text" class="search-keyword" id="search-keyword" />
<select name="searchtype" class="search-option" id="search-option">
<option value="titlekeyword" selected='1'>智能模糊搜索</option>
<option value="title">仅搜索标题</option>
</select>
<button type="submit" class="search-submit">搜索</button>
</div>
</form>

  替换为下面的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<form action="{dede:field name='phpurl'/}/search.php" name="formsearch">
<div class="form">
<h4>搜索</h4>
<input type="hidden" name="kwtype" value="0" />
<input type="hidden" name="searchtype" value="titlekeyword" />
<input name="keyword" type="text" class="search-keyword" id="search-keyword" />
<select name="typeid" class="search-option" id="typeid">
<option value='0' selected='1'>全部栏目</option>
{dede:channelartlist typeid='top' }
{dede:type} <option value='[field:id/]'>[field:typename/]</option>{/dede:type}
{dede:channel type='son' noself='yes'}
<option value='[field:id/]'>-[field:typename/]</option>
{/dede:channel}
{/dede:channelartlist}
</select><button type="submit" class="search-submit">搜索</button>
</div>
</form>

  可以看到,基本的结构什么的都是没有变化的,只是传入了typeid的值。



收缩
  • 微信客服
  • 微信二维码
  • 电话咨询

  • 400-1100-266