hexo干货系列:(五)hexo添加站内搜索

前言


原本想用百度站内搜索,可是没成功,因此改用swiftype,用起来仍是很棒的,这里分享一下个人安装步骤javascript

正文


注册


去swiftype官网注册个帐号,而后登录,对了不要去在乎30天试用,30天过了还能继续使用,网站给的是30天高级帐户的使用(那种有能够创建多个搜索引擎、多帐户共同管理、一个引擎index多个域名的功能的帐户),降级成为免费的帐户类型,可是还能使用。html

Create an engine

登录后选择开始开干,步骤大概以下java

  1. 点击Create an engine
  2. 给你的网站创建一个索引
  3. 输入你的网址
  4. 起个名字

3

上面配置好后开始抓取你网站的数据,大概等了几分钟后,查看Manage下面的Content,就能看到抓取的一些目录和tag数据过来,若是你不想要的话能够手动删除。
swift

install Search


接下来就是重头戏,如何安装插件,首先点击左下方的install Search,就会弹出插件的代码,先复制一下。这个就是一会要用到的插件代码。bash

说明一下,swiftype提供两种方式,一种是弹出的方式,一种是新开一个页面的方式。前者默认就行,后者还要配置另一推东西。我以前也按照网上别人帖子参考的写,结果一直不行。干脆不用了,用默认简单方便。hexo

hexo的Pacman主题配置


接下来都是hexo这边配置,首先打开pacman主题下的_config.yml文件在末尾添加以下代码async

swift_search:
enable:  true

而后再切换的到\themes\jacman\layout_partial目录下,最后须要作的收尾工做所有都在这个目录下。
先打开header.ejs,找到post

<%  }  else  if(theme.baidu_search.enable){ %>
    <form class="search" action="<%- theme.baidu_search.site %>" target="_blank">
<label>Search</label>
    <input name="s" type="hidden" value= <%= theme.baidu_search.id %> ><input type="text" name="q" size="30" placeholder="<%= __('search') %>"><br>
</form>

直接替换成网站

<% } else if(theme.swift_search.enable){ %>
	<form class="search" action="<%- config.root %>search/index.html" method="get" accept-charset="utf-8">
	<label>Search</label>
	<input type="text" id="search" class="st-default-search-input" maxlength="20" placeholder="Search" />
	</form>

反正我也不会用baidu_search,因此直接替换无所谓,你要是还想保留,就直接添加else判断吧。 最后打开footer.ejs(其实header也行,随便你),在最后一个div标签以前添加一开始拷贝的那段js代码,个人是:搜索引擎

<script type="text/javascript">
  (function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){
  (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t);
  e=d.getElementsByTagName(t)[0];s.async=1;s.src=u;e.parentNode.insertBefore(s,e);
  })(window,document,'script','//s.swiftypecdn.com/install/v2/st.js','_st');
  
  _st('install','Ts_hz24x26ZaNWfhsYwW','2.0.0');
</script>

大功告成,来看看什么效果吧,本身发布后打开博客,查询一个博客文章中出现的内容,效果以下:

上面查询的列表实际上是以前在swiftype那边解析的文章列表,若是Content那边没有东西。那你这边查询不会有用的。

总结


好了,站内搜索搞定了,要不要使用大家本身决定。但愿这篇文章对你有帮助~下篇计划写个网站统计插件的教程,我用的CNZZ。写完这篇已经凌晨1点了,明天还要上班,洗洗睡。

参考


利用swiftype为hexo添加站内搜索v2.0

我是嘟嘟MD,我为这篇文章代言。

欢迎转载,但但愿您能注明出处,毕竟没啥人气囧


最后,厚颜无耻的求打赏..若是您认为博主的教程帮助到了你~ 你懂的o(^▽^)o (/▽\=)  

相关文章
相关标签/搜索