0%

Blog 8:[Hexo教程]Hexo之提交搜索引擎收录

利用sitemap.xml来提交搜索引擎收录,是搜索引擎优化(SEO)的重要一步。本文将介绍如何利用sitemap.xml来提交百度谷歌必应的搜索引擎收录。


准备

何为 Sitemap?

Sitemap(站点地图)是一种文件的统称,通常Sitemap(站点地图)可以是txt或者XML格式。通过Sitemap(站点地图)你可以告诉搜索引擎关于你的站点中的网页、视频或者其他文件的相关信息,帮助搜索引擎更好的认识和理解你的站点。格式正确的Sitemap(站点地图)文件会帮助搜索引擎更高效地抓取你的网站。XML格式的站点地图,通常会包含更多的信息,比如你可以通过Sitemap(站点地图)文件告诉搜索引擎你认为网站中的哪些网页和文件比较重要,还会提供与这些文件有关的重要信息。例如,网页上次更新的时间和网页是否有任何备用的语言版本。
知乎

简单来说,Sitemap 使得您可以一次性提交全站的所有 URL 等信息,帮助搜索引擎快速给您的网站建立索引。

何为搜索引擎优化(SEO)?

SEO(Search EngineOptimization,搜索引擎优化)是一种利用搜索引擎的内在规则,优化网站结构和内容,从而提升网站在搜索引擎结果中的自然排名的方法。
百度百科

搜索引擎收录了无数的网页。当用户搜索时,搜索引擎根据用户的关键字找到所有相关的网页,然后通过一定的算法对这些网页进行排名,将最相关的网页放在搜索结果的前面。搜索引擎优化就是通过一些技术手段,让网站在搜索引擎中排名靠前。
那么很显然,您必须首先把整个网站的 URL 都提交给搜索引擎,才能让搜索引擎收录之。进而您再考虑 SEO。

安装插件

您需安装hexo-generator-sitemap插件和hexo-generator-baidu-sitemap插件。前者用于生成通用的sitemap.xml,后者用于生成百度baidusitemap.xml

1
2
npm install hexo-generator-baidu-sitemap --save
npm install hexo-generator-sitemap --save

修改配置文件

打开站点配置文件_config.yml,添加以下内容:

1
2
3
4
5
# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml

生成和部署

在 Hexo 根目录下,运行:

1
2
3
hexo cl
hexo g
hexo d

此时,在根目录的public文件夹中,您会发现其中生成了sitemap.xmlbaidusitemap.xml两个文件。
文件的主体部分大致如下:

1
2
3
4
<url>
<loc>http:/example.com/test/123456/</loc>
<lastmod>yyyy-mm-dd</lastmod>
</url>

这就是您需要提交给搜索引擎的 URL 信息:URL 地址最后更新时间

提交百度

登录百度站长平台

由此进入:百度站长平台
并进入站点管理页面:
站点管理

添加站点并验证

输入您网站的域名:
添加站点

验证网站页面,选用文件验证方式,并下载指定的验证文件(当前:baidu_verify_codeva-JSNntnC1KX.html):
验证

将此验证文件放入themes/next/source下,然后执行:

1
2
3
hexo cl
hexo g
hexo d

等待 GitHub Pages 部署完成(您可在 GitHub 页面查看进度)。然后点击完成验证

主动推送

您需安装hexo-baidu-url-submit插件。该插件可在您执行hexo d时自动向百度推送。

1
npm install hexo-baidu-url-submit --save

修改站点配置文件_config.yml,添加以下内容:

1
2
3
4
5
baidu_url_submit:
count: 5 ## 提交最新的五个链接
host: http://example.com ## 百度站长平台中注册的域名
token: your_token ## 准入秘钥
path: baidu_urls.txt ## 文本文档的地址, 新链接会保存在此文本文档里

host字段一定要填写站长平台注册的域名
要获取token,请点击普通收录,点击API提交,在推送接口一栏可以找到token=********字样。*为您的token

请检查站点配置文件_config.yml中的url字段是否正确。形如:

1
2
3
4
# URL
url: http://example.com
root: /
permalink: :year/:month/:day/:title.xml

url字段必须是站长平台注册的域名

最后,加入新的 deployer:

1
2
3
4
5
deploy:
- type: git ## 原来的deployer
repo:
branch:
- type: baidu_url_submitter ## 添加这里内容即可

出现了两个type字段,因此您必须在前面添加-字符。

自动推送

您可令页面被访问时,其 URL 自动推送给百度。修改主题目录下的layout/post.swig文件,末尾加上:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script>
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>

Sitemap 提交

百度站长平台貌似已经限制了 Sitemap 提交,暂时未获取提交机会。

百度似乎无法爬取 GitHub Pages 上的网页,据说需要二次部署至 Coding 上。待更新

提交谷歌

登录 Google Search Console

由此进入:Google Search Console
点击立即使用

添加站点并验证

同上

Sitemap 提交

编制索引下找到站点地图,输入您的站点地图网址。例如:http://example.com/sitemap.xml

您可以在上方搜索栏输入此网址,让谷歌检测您的 Sitemap 是否可以被收录。
网址检查

点击测试实际网址

成功

您应期望看到的结果是:
是否允许抓取?:是
是否允许编入索引?:是

若提交了 Sitemap 但显示无法抓取,则可能是由于 GSC的显示 bug,请等待一段时间。

据说是这样,目前为止我的 Sitemap 还没有显示成功提交。。。

提交必应

登录 Bing Webmaster

由此进入:Bing Webmaster
可以使用 Microsoft 账户登录。

一键从 GSC 导入名下网站

登录您的 Google 账户即可。

或手动添加网站并验证

同上

Sitemap 提交

Bing 办事效率非常高,Sitemap 一下就通过了。

-------------本文结束 感谢您的时间-------------

欢迎关注我的其它发布渠道