为了“代码第三”分类不致为空,为了备忘,为了方便其他想折腾个人网站的朋友,简要记录老杨同志博客的折腾过程。花费一美金,耗时一小时,简称一刀斩。
Scoop, 比Chocalatey更好的选择
Windows下面软件包管理工具可选项并不多,Chocalatey很是不错,但是对程序员,Scoop应该是个更友好或更好的选择,老杨博客建议使用Scoot来安装必须的git、nodejs等东东——如果还没安装的话。
1 2 3 4 5 6
| Set-ExecutionPolicy RemoteSigned -scope CurrentUser Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh') scoop install git nodejs
scoop bucket add extras scoop install vscode
|
Hexo为骨, NexT为皮
以Hexo为骨,NexT为皮,事就这样成了。
1 2 3 4 5
| npm install hexo-cli -g hexo init blogger cd blogger npm install hexo s
|
然后开始画皮,也不知为啥,就用NexT吧。安装方法有多种,git clone
最简单,当然,最新版本风险自负。
1
| git clone https://github.com/theme-next/hexo-theme-next themes/next
|
好了,骨皮都有了,接下来开始折腾各类插件与配置。
博客站点配置
根目录下面的_config.yml
,没有太多可说的,该咋整咋整,以下是一些关键配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| title: 老杨同志 subtitle: 经球码他 description: 老杨同志·经球码他 keywords: 圣经,神学,足球,代码,Java,其他,Nathanael Yang author: 老杨 language: zh-CN timezone: America/Los_Angeles
theme: next
deploy: type: git repo: https://github.com/nathanaelyang/nathanaelyang.github.io
algolia: applicationID: '${老杨的appId}' apiKey: '${老杨的apiKey}' indexName: 'old-young-boy-index' chunkSize: 5000
sitemap: path: sitemap.xml
symbols_count_time: symbols: true time: true total_symbols: true total_time: true
|
其中博文的检索、字数统计、站点地图生成都需要安装Hexo对应插件,也就是下面这些东东了:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| cd blogger
npm install hexo-algolia --save
npm install hexo-generator-searchdb --save
npm install hexo-symbols-count-time --save
npm install hexo-generator-sitemap --save
npm install hexo-deployer-git --save
npm install hexo-related-popular-posts --save
npm install hexo-generator-feed --save
|
NexT主题配置
NexT主题配置的内容就相对比较多了,themes\next\_config.yml
中可以定义站点图标,比如老杨是在IconFinder上面弄了一只胖乎乎的老羊,想必看到时应该食欲大开,心情不错。
比如右侧菜单设置,简单起见中文内容直接转码录入:
1 2 3 4 5 6 7
| menu: 圣经第一: /categories/%E5%9C%A3%E7%BB%8F%E7%AC%AC%E4%B8%80/ || book 足球第二: /categories/%E8%B6%B3%E7%90%83%E7%AC%AC%E4%BA%8C/ || futbol-o 代码第三: /categories/%E4%BB%A3%E7%A0%81%E7%AC%AC%E4%B8%89/ || code 其他第四: /categories/%E5%85%B6%E4%BB%96%E7%AC%AC%E5%9B%9B/ || bell-slash-o 标签一览: /tags/ || tags 老杨正传: /about/ || user
|
比如读者评论使用disqus:
1 2 3 4 5
| disqus: enable: true shortname: nathanaelyang count: true lazyload: true
|
可折腾的选项很多,不多说了,您看着官方攻略办就好。
GitHub Pages + IONOS by 1&1,合计一刀
自己的博客总得有个窝,GitHub Pages是个好去处,开一个GitHub账号,建一个${username}.github.io
的仓库,把Hexo生成的静态页面一股脑推上去就可以了。
没绑定域名之前,老杨博客的访问地址是https://nathanaelyang.github.io
,其实也够了。
但有个自己专属域名,总归更好一些。相比NameCheap、GoDaddy,IONOS by 1&1更加便宜,老杨的域名oldyoungboy.com
,第一年只需1美金,够便宜吧。
然而便宜的代价就是略显痛苦的身份验证过程,护照、驾照、Bank Statement、I20前仆后继,IONOS的客服才放马前行,我太难了。
接下去就是在source
目录中创建一个CNAME
文件,上书www.oldyoungboy.com
,然后在IONOS的域名DNS设置中,按照GitHub Pages的攻略,设置如下:
有血有肉
骨架都有了,余下的事,应该就是交替运行这些命令,注入血肉吧。
1 2 3 4
| hexo new "${经}·{球}·{码}·{他}" hexo g -w hexo s hexo algolia; hexo d
|