title: HEXO SEO 高级优化
copyright: true
top: 0
date: 2018-07-19 21:17:42
tags: SEO,HEXO,HEXO SEO优化
categories: Debian
permalink:
password:
keywords: [HEXO,HEXO SEO优化]
description: 总结一下使用Hexo搭建网站后,SEO优化方案的总结,后期会不定期更新。
你已经成功了,成功的人不需要流弱者的眼泪。
个人对HEXO搭建网站的SEO优化方案进行总结,从本地的文章结构到定期推送,再到SEO关键词优化做一个全面体系的汇总,如果有更好的方法可以私聊我。
本地文章优化
添加sitemap
首先给你的文章生成sitemap文件
npm install hexo-generator-sitemap --save #sitemap.xml适合提交给谷歌搜素引擎npm install hexo-generator-baidu-sitemap --save #baidusitemap.xml适合提交百度搜索引擎
然后在站点配置文件_config.yml中添加以下代码
# 自动生成sitemapsitemap:path: sitemap.xmlbaidusitemap:path: baidusitemap.xml
最后修改站点配置文件_config.yml
# URL## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'url: http://你的网站
每次hexo g后都会在/public目录下生成sitemap.xml和baidusitemap.xml,这就是你的站点地图。
优化结构
seo搜索引擎优化认为,网站的最佳结构是用户从首页点击三次就可以到达任何一个页面,但是我们使用hexo编译的站点打开文章的url是:sitename/year/mounth/day/title四层的结构,这样的url结构很不利于seo,爬虫就会经常爬不到我们的文章,于是,我们可以将url直接改成sitename/title的形式,并且title最好是用英文,在根目录的配置文件下修改permalink如下:
url: http://你的网站root: /permalink: :title.htmlpermalink_defaults:
首页标题优化
SEO最重要的是你的标题,一般搜索都是搜索你的标题。
更改index.swig文件(your-hexo-site\themes\next\layout);
将下面这段代码:
{% block title %} { { config.title }} {% endblock %}
改成:
{% block title %} { { config.title }} - { { theme.description }} {% endblock %}
这时候你的首页会更符合网站名称 - 网站描述这习惯。
进阶,做了seo优化,把关键词也显示在title标题里,可改成:
{% block title %} { { theme.keywords }} - { { config.title }}{ { theme.description }} {% endblock %}
注意:别堆砌关键字,整个标题一般不超过80个字符,可以通过chinaz的seo综合查询检查。
关键词与描述
搜索引擎除了主要抓取标题外,页面的关键词和描述也会抓取。
在\scaffolds\post.md中添加如下代码,用于生成的文章中添加关键字和描述。
keywords: description:
在\themes\next\layout_partials\head.swig有如下代码,用于生成文章的keywords。暂时还没找到生成description的位置。
{% 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 %}
将以下代码去掉:
{% if post.description %} {