hexo网站快速搭建

2019-11-26 16:13:29 浏览数 (1)

本文由腾讯云 社区自动同步,原文地址 https://stackoverflow.club/article/how_to_build_hexo_very_fast/

背景

在申请google adsense时处处碰壁,不是网站访问不到就是说没有内容。考虑到vue leancloud的方式在国外确实访问不畅,一怒之下打算将博客重新迁回hexo做全静态网站。于是有了这篇hexo网站速成记。

必备

顾名思义,这里的东西都是一定要有的,否则网站的访问、SEO都会有影响。

主题

人活一张脸,树活一张皮。还有hexo有next主题,换上就行。虽然大家都是next,前篇一律的没啥好看的,但总比自己做的丑主题强多了。

下载

代码语言:txt复制
cd your-hexo-site
git clone https://github.com/iissnan/hexo-theme-next themes/next

启用,在站点配置文件中。

代码语言:txt复制
theme: next

设定主题scheme,在主题配置文件中。

代码语言:txt复制
scheme: Mist

sitemap

网站要给搜索引擎提交连接,sitemap是有力的工具。

npm安装插件

代码语言:txt复制
npm install hexo-generator-sitemap --save

站点配置文件中添加如下内容

代码语言:txt复制
Plugins:
- hexo-generator-sitemap
sitemap:
    path: sitemap.xml

404页面

这个还是方便搜索引擎的,抓不到的页面就返回404。

生成新page

代码语言:txt复制
hexo new page 404

给404页面添加永久链接

代码语言:txt复制
permalink: /404.html

备案号

主题配置文件中,寻找footer,下面有custom_text字段,填入以下内容:

代码语言:txt复制
<a target="_blank" href="http://www.miitbeian.gov.cn/"> 陕ICP备xx号</a>

统计

主题配置文件中,搜索baidu_analyticsgoogle_analytics, 填入id即可。

广告

themes/next/layout/_partials/head/custom-head.swig可以填入任何html格式内容,复制粘贴google adense代码即可。

美化

搜索

非常有用的工具,我可以搜索历史文章,方便找到源文件。

在站点根目录执行

代码语言:txt复制
npm install hexo-generator-search --save
npm install hexo-generator-searchdb --save

站点配置文件中增加以下内容

代码语言:txt复制
search:
  path: search.xml
  field: post
  format: html
  limit: 10000

注意:在每篇文章开头的链接中,不要使用前导/后结束/。在其他浏览中无影响,但是在搜索中会产生错误的url。

正确的格式:

代码语言:txt复制
permalink: article/how_to_build_hexo_very_fast

相关文章

经常会发现网站的跳出率特别高,新访问多且只浏览一页就跳出,这说明网站的内容不够丰富,不能吸引用户浏览第二页。相关文章可以缓解该问题。

首先安装npm插件

代码语言:txt复制
npm install hexo-related-popular-posts --save

然后在主题的相关文件https://github.com/iissnan/hexo-theme-next/blob/master/layout/_macro/post.swig#L313中插入内容

代码语言:txt复制
...
</div>
{{ popular_posts( {} , post ) }}
{#####################}
{### END POST BODY ###}
{#####################}
...

其他内容

第一次使用hexo时还花了很多时间做了做阅读量统计,站点访问统计展示。后来觉得真的没必要,小站点访问量就那么点,展不展示出来一个样子。反倒是那些大站点,从来没见他们把访问量炫耀出来的。

还有安装评论插件的,这个目前没有必要。反正博客接近两年了,评论没有多少。

至于字数多少、阅读时间,有点太自娱自乐了,我还是专心码字吧。

排错

错误 Template render error: (unknown path)

查看你的内容中是否有双括号等让hexo误解析了,或者直接写代码把双括号全去掉

错误 JS-YAML: can not read a block mapping entry; a multiline key may not be an implicit key at line 8, column 12:

  • 查看yaml头冒号后面有没有加个空格
  • 查看实际的md文档,冒号后面是否有不对称的引号
代码语言:txt复制
title: hexo基本命令
date: 2015-12-27 20:55:29
categories: [编程, hexo]
tags:[hexo] #这里缺少一个空格
#也就是说每一个 标签:后需要一个空格
---

参考:

  • hexo的各种配置

0 人点赞