当我们搭建一个网站之后,如果没有做一些相关的搜索引擎优化SEO,那么我们的网站是很难获取来自搜索引擎的流量的,用户很难在搜索引擎上搜索到我们网站的内容,所以接下来我们要为Hexo网站做一些简单的搜索优化。
将网站链接提交到百度
百度搜索引擎提交入口
有三种验证方式,我选择Html标签验证,在themes\next\layout_partials\head.swing中添加验证代码:
<meta name="baidu-site-verification" content="s8Pe1TBqyy" />
然后点击完成验证,通过即可。同理将站点链接也提交到Google和搜狗,此处不表。
给站点添加sitemap
Hexo安装sitemap
npm install hexo-generator-sitemap --save #sitemap.xml适合提交给谷歌搜素引擎
npm install hexo-generator-baidu-sitemap --save #baidusitemap.xml适合提交百度搜索引擎
2、 在站点配置文件_config.yml中添加以下代码1
2
3
4
5# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml
3、 修改站点配置文件_config.yml1
2
3# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yoursite
4、 Hexo编译1
2hexo clean
hexo g
会/public目录下生成sitemap.xml和baidusitemap.xml,这就是你的站点地图。
5、 提交sitemap到站长平台
百度站长平台sitemap提交是邀请制的,并没有对所有站长开放,只有网站到一定等级百度才会在你后台开放提交sitemap的入口。
添加蜘蛛协议robots.txt
1、 新建robots.txt文件,添加以下文件内容,把robots.txt放在hexo站点的source文件下。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15# hexo robots.txt
User-agent: *
Allow: /
Allow: /categories/
Allow: /tags/
Allow: /archives/
Allow: /about/
Disallow: /vendors/
Disallow: /js/
Disallow: /css/
Disallow: /fonts/
Disallow: /vendors/
Disallow: /fancybox/
Sitemap: http://www.zaoanx.com/sitemap.xml
Sitemap: http://www.zaoanx.com/baidusitemap.xml
2、 在百度站长平台监测并更新Robots
提示检测到您更新了Robots文件即成功。
给出站链接添加 “nofollow” 标签
nofollow标签是由谷歌领头创新的一个“反垃圾链接”的标签,并被百度、yahoo等各大搜索引擎广泛支持,引用nofollow标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有nofollow属性的任何出站链接,以减少垃圾链接的分散网站权重。
以hexo的NexT主题为例,需要修改两处
1、 找到footer.swig,路径在your-hexo-site\themes\next\layout_partials,将下面代码
{{ __('footer.powered', 'Hexo') }}
改成
{{ __('footer.powered', 'Hexo') }}
将下面代码
<a class="theme-link" href="https://github.com/iissnan/hexo-theme-next">
改成
<a class="theme-link" href="https://github.com/iissnan/hexo-theme-next" rel="external nofollow">
2、 修改sidebar.swig文件,路径在your-hexo-site\themes\next\layout_macro,将下面代码
<a href="{{ link }}" target="_blank">{{ name }}</a>
改成
<a href="{{ link }}" target="_blank" rel="external nofollow">{{ name }}</a>
将下面代码
<a href="http://creativecommons.org/licenses/{{ theme.creative_commons }}/4.0" class="cc-opacity" target="_blank">
改成
<a href="http://creativecommons.org/licenses/{{ theme.creative_commons }}/4.0" class="cc-opacity" target="_blank" rel="external nofollow">
可以使用chinaz站长工具进行各项检测。
keywords 和 description
在\scaffolds\post.md中添加如下代码,用于生成的文章中添加关键字和描述。1
2keywords:
description:
在\themes\next\layout_partials\head.swig有如下代码,用于生成文章的keywords。暂时还没找到生成description的位置。1
2
3
4
5
6
7{% if page.keywords %}
<meta name="keywords" content="{{ page.keywords }}" />
{% elif page.tags and page.tags.length %}
<meta name="keywords" content="{% for tag in page.tags %}{{ tag.name }},{% endfor %}" />
{% elif theme.keywords %}
<meta name="keywords" content="{{ theme.keywords }}" />
{% endif %}
然后在\themes\next\layout_macro\post.swig中找到这个位置:
{% if post.description %}
将以下代码去掉:1
2
3
4
5
6
7{% if post.description %}
{{ post.description }}
<div class="post-more-link text-center">
<a class="btn" href="{{ url_for(post.path) }}">
{{ __('post.read_more') }} »
</a>
</div>
否则首页的文章摘要就会变成文章的description。
首页title的优化
更改index.swig文件,文件路径是your-hexo-site\themes\next\layout,将下面代码
{% block title %} {{ config.title }} {% endblock %}
改成
{% block title %} {{ config.title }} - {{ theme.description }} {% endblock %}
这时候你的首页标题会更符合网站名称 - 网站描述这习惯。
修改文章链接
HEXO默认的文章链接形式为domain/year/month/day/postname,默认就是一个四级url,并且可能造成url过长,对搜索引擎是十分不友好的,我们可以改成 domain/postname 的形式。编辑站点_config.yml文件,修改其中的permalink字段改为permalink: :title.html即可.