You are here

C,搜索的实现

  作者: 老葛 亚艾元软件

在微信的配置界面,找到“微信默认搜索”配置项:

8-1-20.png 

8-1-20

  点击,进入页面:admin/wechat/config/default_search,我们看到

 

8-1-21.png 

8-1-21

这里我们需要弄明白,每个配置项的含义,如果你熟悉views的话,那么很简单。

Views name: 视图的机读名字

Views display: 显示的机读名字

过滤器标识符: 全文搜索对应字段的标识(机读名字)

 

admin/structure/views views的管理界面,找到上面的配置对应的视图

 

8-1-22.png 

8-1-22

 

Views的机读名字:

8-1-23.png 

8-1-23

可以在路径里面获取。

 

8-1-24.png 

8-1-24

再打开的视图的配置界面,点击上面的wechat response”。

Display的名字,也可以在URL里面找到:

 8-1-25.png

8-1-25

也可以在views的高级配置里面找到:

8-1-26.png 

8-1-26

前面这两个相对简单一点,过滤器标识符,需要特别熟悉Drupal的人才会知道,我们这里给出它对应的位置,看这里:

8-1-27.png 

8-1-27

  点击过滤条件Search:全文搜索”, 或者你使用的搜索条件。我们看到这样的弹出框。

8-1-28.png 

8-1-28

这个还是比较熟悉的,我们往下拉,看到下面的信息:

8-1-29.png 

8-1-29

   过滤器标识符就在这里,它其实是URL参数里面的key

Views里面,全文搜索字段,必须是选中这个复选框的:“把这个过滤条件显示给网站的访问者,允许他们可以更改这个过滤条件。”

微信端的输入,最终传递给了这个过滤条件,这个过滤条件,用来检索用。

 

我们这里面使用的是solrsearch APIsearch api solr, 注意安装的时候使用composercomposer 很多时候需要科学上网。

 

微信模块自带的默认配置,走的是Drupal核心自带搜索,需要启用核心search模块。

 

8-1-30.png 

8-1-30

默认搜索,对于中文来说,下面的配置“索引关键词最小字数”,从3改为1

 

8-1-31.png 

8-1-31

Drupal8下面,改进了一点,不改为1可能也能搜索出来。

 

 

需要注意几点:

 1) display type 必须选择使用 wechat response:

8-1-32.png 

8-1-32

2) 必须做好Views字段与微信消息字段之间的映射关系。点击显示里面的设置。

8-1-33.png

8-1-33

我们看到这样的弹出框。

 

 8-1-34.png 

8-1-34

这里的label名字,是微信官方需要我们提供的。下拉列表里面的字段,是对应views的可用字段。

8-1-35.png 

8-1-35

这里的字段,是在views配置的FIelds里面添加的:

8-1-36.png 

8-1-36

 

   这是另一个映射示例:

 

 

8-1-37.png 

8-1-37

总之这里的映射关系,需要配置好。

3)

显示的项目数量不能超过8。微信的限制:以前是10, 后来改成8了。推荐使用5

8-1-38.png 

 

8-1-38


Drupal版本: