各種Hexo主題選來去,,抉擇不定到底使用哪個主題,。如果你也是和我一樣,可以看看知乎的問答,,看看大家的推薦吧,。
Hexo官網(wǎng):https://hexo.io/
關(guān)于Hexo是什么和一系列操作,,請看官方文檔吧:https://hexo.io/zh-cn/docs/
關(guān)于Hexo主題,,官網(wǎng)推薦的主題有這些:https://hexo.io/themes/
或者直接去GitHub開源的Hexo倉庫Wiki頁面找,這頁面收集了很多主題:https://github.com/hexojs/hexo/wiki/Themes(包括demo樣例,,也能下載下來)
除了到官網(wǎng)找主題,,還可以到GitHub上直接搜索主題,,輸入關(guān)鍵字hexo-theme
即可,就可以看到很多主題:github上搜主題
以下列舉我有考慮過的一些主題:
- BlueLake:demo github下載
- yilia:demo github下載
- 材料:demo github下載
- 下一個:demo github下載(該主題在github上star最高)
- 相信:demo github下載
- 橄欖球:demo github下載
- mdui:demo github下載
- raytaylorism:demo github下載
- ylion:demo github下載
- simpleblock:demo github下載
- Jacman:demo github下載
- free2mind:demo github下載
- .......
1,,NexT主題配置
選來去還真不知道該用哪個主題好,,最后還是決定選GitHub最高星的這個主題Next吧!好,,好,,那么多人在用,普遍大眾還是很喜歡的,,那我暫時也決定選用這個吧,,這么多人在用,相關(guān)配置,,優(yōu)化等操作應(yīng)該很在網(wǎng)上容易找到詳細資料,。我就不在這篇文章闡述了,本文重點還是當(dāng)做筆記記錄過程中遇到的問題和坑,。
先欣賞幾個網(wǎng)上使用的NexT該主題的演示吧:
- 吳小龍同學(xué):http:///
- ....
關(guān)于下一主題的修改,,其實可以看上面第一個演示博主的博文(其文章寫于2016-04-07):Hexo站點,NexT主題修改全記錄 ,,還是很全面的,。
NexT下載:https://github.com/iissnan/hexo-theme-next
NexT主題,官方設(shè)置教程在此:http://theme-next.iissnan.com/
這是NexT主題GitHub上其wiki頁面關(guān)于主題設(shè)置教程:https://github.com/iissnan/hexo-theme-next/wiki/%E4%B8%BB%E9%A2%98%E9%85%8D %E7%BD%AE%E5%8F%82%E8%80%83
這個主題相關(guān)的設(shè)置網(wǎng)上一搜是真的太多了,,我就不會繼續(xù)展開敘述了,,列舉一些參考資料吧:
....
1.1問題
但是,,筆者在配置過程中 遇到被官方文檔所坑,!懷疑是官方文檔沒及時更新的緣故,在此,,記錄一下:
①配置菜單,,如「首頁」,「分類」,,「標(biāo)簽」等這些菜單旁邊的圖標(biāo)沒顯示,,而都顯示成問號,按照官方示例配置是這樣的:
menu:
home: /
categories: /categories/
tags: /tags/
archives: /archives/
about: /about/
#schedule: /schedule/ || calendar
#sitemap: /sitemap.xml || sitemap
#公益: /404/ || heartbeat
# Enable/Disable menu icons.
menu_icons:
enable: true
home: home
about: user
categories: th
tags: tags
網(wǎng)上很多文章寫的都是上面那樣的配置,,但真正的配置是這樣的:
menu:
home: / || home
archives: /archives || archive
categories: /categories || th
tags: /tags || tags
about: /about || user
menu_icons:
enable: true
原來下這個主題,,「菜單設(shè)置」被注釋掉的這些配置,去掉注釋就是正確的配置?。ü俜轿臋n示例坑啊,懷疑是沒及時更新吧)
②以及「友情鏈接」圖標(biāo)的設(shè)置官方文檔包括網(wǎng)上文章寫的都是如下:
social:
GitHub: https://github.com/yourname
郵箱: mailto:test@gamil.com
social_icons:
enable: true
icons_only: false
transition: false
GitHub: github
郵箱: envelope
但正確配置是如下:
social:
GitHub: https://github.com/yourname || github
郵箱: mailto:test@gamil.com || envelope
social_icons:
enable: true
icons_only: false
transition: false
即可,。
?
1.2其他
1,,關(guān)于文章所屬「分類「和」標(biāo)簽」的設(shè)置
之前使用的某個主題,,只要在源文件夾下新建的文章前面按如下格式表明所屬分類和標(biāo)簽:
title: 自學(xué)編程成功概率有多少可能
date: 2017-05-26 19:57:47
tags: [編程,感悟]
categories: 技術(shù)
但是在NexT主題下的設(shè)置的步驟如下:
先
hexo new page categories
新建categorier文件夾,其中會自動生成一個index.md
文件,,修改(即添加一行)為:--- title: categories date: 2018-01-23 17:14:51 type: "categories" ---
同理,,「標(biāo)簽」也一樣,
hexo new page tags
生成標(biāo)簽文件夾,,其中會自動生成一個index.md
文件,,修改為:--- title: tags date: 2018-01-23 17:14:51 type: "tags" ---
然后寫的博客文章,表明所屬「分類」和擁有哪些「標(biāo)簽」,,官方文檔所說的格式如下:
categories: - Diary tags: - PS3 - Games
但是我親測,,如下也是可以的:
categories: 技術(shù) tags: [編程,感悟]
備注: 對于NexT這個主題,對于「關(guān)于」這個菜單和上面新建分類和標(biāo)簽一樣,,也是需要手動創(chuàng)建文件夾的,,這樣會生成關(guān)于文件夾,同時自動生成文件,,然后可以在這個文件中寫上自我個人介紹,。(親測過,這個文件的名字不能修改,,否則「關(guān)于」菜單出錯) hexo new page about
index.md
.md
index.md
另外說幾句,,關(guān)于這部分的設(shè)置,官方文檔稱其為“Front-matter”,,“Front-matter”是文件最上方以分隔的區(qū)域,,用于指定個別文件的變量,舉例來說: ---
title: Hello World
date: 2013/7/13 20:46:25
---
以下是預(yù)先定義的參數(shù),,您可在模板中使用這些參數(shù)值并加以利用,。
參數(shù) | 描述 | 默認值 |
---|---|---|
布局 | 布局 | |
標(biāo)題 | 標(biāo)題 | |
日期 | 建立日期 | 文件建立日期 |
更新 | 更新日期 | 文件更新日期 |
注釋 | 開啟文章的評論功能 | 真正 |
標(biāo)簽 | 標(biāo)簽(不適用于分頁) | |
類別 | 分類(不適用于分頁) | |
永久鏈接 | 覆蓋文章網(wǎng)址 |
2,添加本地添加搜索菜單(功能)
安裝插件
hexo-generator-searchdb
npm install hexo-generator-searchdb --save
打開站點配置文件找到擴展在下面添加(其實,,新增以下內(nèi)容到任意位置即可)
search: path: search.xml field: post format: html limit: 10000
打開主題配置文件找到本地搜索,,將啟用設(shè)置為true,啟動本地搜索功能,,這樣就能在頁面中可以看到搜索菜單了
# Local search local_search: enable: true
3,,添加字數(shù)統(tǒng)計,閱讀時長,,友情鏈接
參考資料:
第一步:安裝WORD_COUNT插件,,在博客根目錄下打開終端:npm install hexo-wordcount --save
第二步:在主題配置文件(Blog \ themes \ next \ config.yml)中打開wordcount統(tǒng)計功能
# Post wordcount display settings
# Dependencies: https://github.com/willin/hexo-wordcount
post_wordcount:
item_text: true
wordcount: true
min2read: true
如果僅僅只是打開開關(guān),,部署之后會發(fā)現(xiàn)文章的【字數(shù)統(tǒng)計】和【閱讀時長】后面沒有對應(yīng)的XXX字,XX分鐘等字樣,,只有光禿禿的數(shù)字在那里,。
解決方案:
找到Blog \ themes \ next \ layout_macro \ post.swig文件,,將“字”,“分鐘”字樣添加到如下位置即可,。
<span title="{{ __('post.wordcount') }}">
{{ wordcount(post.content) }} 字
</span>
...
<span title="{{ __('post.min2read') }}">
{{ min2read(post.content) }} 分鐘
</span>
然后可以看到顯示如:閱讀時長 ≈ 2 分鐘
,,但比如不需要顯示,修改這個地方: ≈
{% if theme.post_wordcount.item_text %}
<span class="post-meta-item-text">{{ __('post.min2read') }} ≈</span>
{% endif %}
把這里的≈
刪除即可,。(PS:這個是html的特殊字符的表示)