Mac搭建Hexo博客及NexT主题配置优化
[toc]
前言
之前在简书上看到一位博主小马哥Mark写的文章很好,关于在Mac上搭建Hexo博客,后来找不到了。现在自己整理一下,方便以后回忆。
首先是准备工作:
要想使用Hexo和github pages搭建博客,需要以下环境:
Github账号一枚,并创建一个指定名字的repo
Homebrew套件管理器,主要用来安装git和node.js
Git版本管理工具
node.js
配置SSH key(推荐使用)
安装Hexo
同步Hexo博客到github
NexT主题配置及优化(如果你喜欢别的主题,请忽略)
注册Github账号
上官网注册就可以了,这里不做细说,然后点击 New repository
如图,仓库名填自己用户名.github.io。点击create repository
创建仓库
安装Homebrew套件管理器
Homebrew是一个强大的套件管理器,有了它你可以通过它安装其他插件,若git、node.js等
安装速度迅速。就是下载安装Homebrew比较慢。而它则需要你安卓xcode,它需要给xcode安装插件。
打开终端输入以下指令:
1 | /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
如果指令失效,可去官网查看最新指令
安装Git版本管理工具
git是一款强大的版本管理工具,开发者都知道这个,不多做说明。在终端输入以下指令:
1 | brew install git |
安装node.js
node.js是js的运行环境,前段都知道这个。我们用这个可以编译运行js环境,而Hexo是基于node.js的,所以要让Hexo运行,node.js环境是必不可少的。使用Homebrew安装node.js也特别简单,在终端输入如下命令:
1 | brew install node |
配置SSH key
这里推荐使用SSH sey,详细配置在这里有。
安装Hexo
经过以上步骤的铺垫,终于到了Hexo安装了,前面我们安装了node.js,装完node之后,我们就可以使用npm命令了,而Hexo安装就是使用npm,在终端输入以下命令:
1 | npm install -g hexo |
然后等待一会儿,hexo会自动完成下载安装。Hexo安装完成之后,在你喜欢的位置随意创建一个文件夹,这个文件夹以后就是你存放本地博客的地方了,通过cd filepath(filepath替换成你创建的文件夹目录)命令,进入到你创建的文件夹目录,然后执行以下命令:
1 | hexo init |
这样Hexo会在该文件夹创建本地博客所需的一切资源。这样本地博客就搭建好了,输入以下命令:
hexo g // 全拼是:hexo generate,可以简写成 hexo g
hexo s // 全拼是:hexo server,可以简写成 hexo s
这样就开启了一个本地博客服务器,打开浏览器,在地址栏输入localhost:4000,就可以查看本地博客了,hexo默认生成了一片hello world博客。注意,以上hexo开头的命令,执行目录必须是你创建的博客文件夹目录。
同步Hexo博客到Github
现在你已经可以在本机查看你的博客了,但是要想让别人通过网络可以查看你的博客,还需要一步,那就是将你的博客发布到github仓库。在terminal终端,将当前目录切换到你的本地博客目录,执行以下命令:
1 | npm install hexo-deployer-git --save |
安装完成之后,打开本地博客目录的_config.yml文件,编辑其中的deploy节点:
1 | deploy: |
将上面yourusername替换成你的github用户名即可,你也可以去你开始的时候创建的名为yourusername.github.io
的仓库去直接复制完整的地址,如下图:
当前复制出来的值,就是通过SSH方式clone的地址,配置完成后,以后提交博客更新不用输用户名和密码(如果你ssh key没有设置密码的话);点击上图右上角Use HTTPS,复制出来的clone地址也可以配置到repo,但是这样,提交更新的时候,就需要输入用户名和密码了。
保存配置之后,在本地博客目录执行以下命令:
1 | hexo clean // clean本地项目,防止缓存 |
然后,在浏览器地址栏输入yourusername.github.io
就可以访问你的博客了,别人也可以通过这个地址访问你的博客。
如果想了解Hexo常用命令可以点击这里,Hexo常用命令没几个,常用的有创建新博客、clean、生成静态文件、发布等,上述官方文档有详细介绍
NexT主题配置及优化
NexT主题是一套简约的主题,详细配置请看这里,这个是NexT主题作者维护的配置文档,作者是国人,所以文档是中文的,而且写的非常详细,对照文档,所有功能都能轻松实现。等你配置完成后,你的博客将拥有评论系统,访问次数统计,站内搜索,代码高亮,百度统计,社交分享(分享到微博,微信,qq等)等等强大的功能。官方文档很详细,我就不再赘述了。
其他遗漏的点
1.如何删除一篇博文
当然,我们辛辛苦苦写了博文,一般是不会删除的,最多修改一下,但是我们搭建的过程中或者刚搭建好个人博客站点,可能一激动就发了好多测试博文,如果想删除这类文章,在Finder中,找到本地博客所在目录,找到/source/_posts
文件夹,里面放了所有我们写的博客,想删除哪篇,直接在这里删除,然后再重新发布到github,这篇博文就不见了
2.fork me on github
如果你访问我的个人博客,你会发现右上角有一个倾斜的fork me on github 图标,想要集成这个图标,只需要去这里挑选你喜欢的样式,把样式代码复制过来,然后打开你本地博客目录下的themes/next/layout/layout.swig
文件,然后把你复制过来的样式代码粘贴到如下位置:
1 | <body itemscope itemtype="http://schema.org/WebPage" |
其中哪个超链接就是复制的样式代码,粘贴位置在body内header标签之上。
3.给博文添加tag和分类
使用如下命令:
1 | hexo new "blog title" |
创建的新博文文件,打开之后顶部会有一段自动生成的文本,在其中加入tag和category标签即可指定tag和分类。
1 | --- |
4.手动实现某条博文置顶
Next主题没有博文置顶相关设置(或许这个功能Hexo应该提供,但我分不清),但是我发现发布的博文是根据发布日期倒序排序的,即:越早发布的,排的越靠后!而发布日期,我们可以通过博文的头部date
字段指定:
1 | --- |
所以我们可以给想要置顶的博文,指定一个将来的日期,这样就可以让这篇博文一直排在别的博文前面,达到手工置顶的目的!但是要注意:对于已经发布的博文,发布日期和文件名称(不是title字段的值,而是md文件名)是该文章访问url的组成部分,也就意味着,已经发布的文章如果改了发布日期,针对这篇文章的链接就都不能用了,而且浏览统计等信息都会受到影响,所以手工置顶应该慎重使用!