带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(中)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(中)

《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.18.Enterprise Search —— 3.5.18.2.Site Search(上) https://developer.aliyun.com/article/1226777



二、在个人网站上增加搜索框

 

到目前为止,我们所有的工作都在 swiftype.com 网站上完成的,并且完成了一个搜索引擎的创建,接下来我们要在自己的个人网站应用中应用搜索功能,也就是我们需要为我们的网站上添加上一个搜索框。


 这个步骤也很简单,只需要在你的网站上增加几行代码即可,如下是完整示例代码:


<html>
  <head>
    <title>The Most Minimal Seeking</title>
    <scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script type="text/javascript"src="jquery.swiftype.search.js"></script>
    <script type='text/javascript'>
      $(function() {
        $('#st-search-input').swiftypeSearch({
          resultContainingElement: '#st-results-container',
            engineKey: 'swiftype-example-api'
        });
      });
    </script>
  </head>
  <body>
    <form>
      <input type="text" placeholder="Search" id="st-search-input" />
    </form>
    <div id="st-results-container"></div>
  </body>
</html>

那如何在我们已有的网站中应用呢?按照下面代码块分解对应使用即可。

 

首先,需要在页面  标签中引入搜索需要的 js(在 Github 可以下载源码:https://github.com/swiftype/swiftype-faceted-search-example):


<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script type="text/javascript"src="jquery.swiftype.search.js"></script>

然后,在页面标签中增加搜索 form 表单和负责展示搜索结果的 st-results-container div 标签,通过下面代码块,就可以让我们的网站页面上出现搜索框:

 

<form>
  <input type="text" placeholder="Search" id="st-search-input" />
</form>
<div id="st-results-container"></div>

同时为了能够使得我们的搜索框能够正确运行,我们必须首先在 app.swiftype.com 网站得到我们的 Engine Key,填写到搜索框的触发事件上:

<script type='text/javascript'>
      $(function() {
        $('#st-search-input').swiftypeSearch({
          resultContainingElement: '#st-results-container',
          engineKey: '你的enginekey'
        });
      });
</script>

复制我们网站的 Engine key:

image.png


image.png


我们的网站显示如上,多了一个搜索框。这个时候我们在上面的搜索中输入我们想要的关键词,比如“线程”


image.png

我们可以看到当我输入“线程”后,在我们的网页上出现了我们所搜索的一些结果,我们可点击其中任意一项就会进入我们的对应的页面中。

至此,其实我们的网站其实已经完成了搜索功能的提供。下面会再介绍一些可以提升搜索体验的高级配置。

 

《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.18.Enterprise Search —— 3.5.18.2.Site Search(下) https://developer.aliyun.com/article/1226774

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
12月前
|
数据采集 XML 存储
带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(下)
带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(下)
|
12月前
|
搜索推荐 索引
带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(上)
带你读《Elastic Stack 实战手册》之63:—— 3.5.18.2.Site Search(上)
130 0
|
12月前
|
缓存 索引
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(3)
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(3)
|
12月前
|
编解码 JSON Java
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(5)
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(5)
|
12月前
|
JSON 数据格式
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(4)
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(4)
|
12月前
|
JSON 安全 API
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(2)
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(2)
|
12月前
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(1)
带你读《Elastic Stack 实战手册》之24:——3.4.2.9.Search template(1)
|
12月前
|
存储 算法 搜索推荐
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(2)
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(2)
|
12月前
|
Ubuntu 物联网 大数据
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(6)
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(6)
|
12月前
|
存储 安全 Java
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(3)
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(3)
102 0
带你读《Elastic Stack 实战手册》之62:—— 3.5.18.1.Workplace Search(3)