title: hexo第三方服务安装总结
date: 2020-02-05 21:37:09
tags: hexo美化
top_img: http://hexo.yookbu.xyz/hexo/hexo%E7%AC%AC%E4%B8%89%E6%96%B9.png
cover: http://hexo.yookbu.xyz/hexo/hexo%E7%AC%AC%E4%B8%89%E6%96%B9.png


Algolia(搜索)

Algolia是一家为网站与移动应用提供托管式搜索API的初创企业,成立于2012年,总部位于旧金山,曾参加过2014年的YC训练营。网站或移动应用只需嵌入简单代码数分钟即可实现搜索功能

​ --百度百科

想让你的博客拥有搜索功能?看看这篇文章吧,你将在5分钟左右,使你的基于hexo搭建的博客拥有这项功能。你将花费0¥;

注册Algolia账号

在Algolia账号的登录页,你可以选择Google账号,或者GitHub账号登录,经过简单的注册,你将看到Algolia控制台

得到三项数据

点击API Keys,我们需要三项数据,1:Application ID 2:index name (用户名,注意first name和last name中间通常有一个空格) 3:API Keys(需要自己创建)

创建API Keys,

点击All API Keys,点击右上角New API Key ,没有特别需要的话,除了最后一项,其他的全部默认,最后一项如图

创建完成后,你就得到了API Keys

配置数据

先打开站点根目录下的_config.yml添加以下代码

# Algolia Search API Key
algolia:
  applicationID: '你的Applisation ID'
  apiKey: '你的API Keys'
  indexName: '输入index name'

打开命令行,用cd命令切换到博客目录下,运行

export(windows为set Powershell 用 $env: Mac和git bash 为 export) HEXO_ALGOLIA_INDEXING_KEY=你的API keys
hexo algolia #查看是否设置成功如果没有值就设置失败

再打开主题的配置文件,找到(没有的话,自行创建)Algolia Search 配置部分:将enable改为true即可

####    search    ####
# Algolia search
# ---------------
algolia_search:
  enable: true
  hits:
    per_page: 10

  labels:
    input_placeholder: Search for Posts
    hits_empty: "我们没有找到任何结果: ${query}" # if there are no result
    hits_stats: "找到约${hits}条结果(用时${time}ms)"

遇到的问题

Not enough rights to update an object near line:1 column:489

原因:得到API Keys时,ACL(访问控制列表只选择了Search)

解决思路:勾选上剩余

百度推送

添加网站,获取token

百度站长注册登陆之后,在用户中心/站点管理下,添加网站(最好加www前缀),不支持https的协议头选http即可,想让网站使用https协议头的话,参见我的另一篇文章

添加完网站之后,在链接提交页面的下方,自动提交处获得网站的token

图片说明

配置token

打开hexo配置文件

# URL

## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'

url: http://www.yookbu.xyz  #此处要修改为在百度站长平台中添加域名
root: /
permalink: :title/
permalink_defaults:
pretty_urls:
  trailing_index: true # Set to false to remove trailing index.html from permalinks
#此处是新添加的
#百度站点信息
baidu_url_submit:
  count: 100               # 提交最新的多少个链接  
  host: www.yookbu.xyz    # 在百度站长平台中添加域名
  token: XXXXX            # 你的token
  path: baidu_urls.txt   # 文本文档的地址, 新链接会保存在此文本文档里

添加站点信息推送

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy: 
 - type: gitxxx
   message: update
   repository: git@xxx.xxx.xxx.xxx:/var/repo/hexoblog.git
   branch: master
 - type: baidu_url_submitter # 注意,这个为新增的

然后执行

hexo clean
hexo g -d 

当你看到{"remain":xxxxx,"success":xx}即为成功(success后面为成功提交的页面,应不为0,如果为0,是不正确的)

图片说明

百度收录需要一阵子,耐心等待吧,反正我是还没被收录。