Hexo 的 BMW 主題配置

關於如何修改以 BMW 主題為主的網站,頁面中的一些細節。

注意:修改 ejs 檔案的時候因為編輯器儲存自動排版 (Beautify) 的功能,會導致 ejs 語法錯誤。記得使用純文字編輯器修正錯誤。

1
2
3
4
<!-- 正確語法 -->
new Date( <%- footerStartTime.year %> )
<!-- 會變成錯誤語法,如下: -->
new Date( < % - footerStartTime.year % > )

keywords (SEO 關鍵字)

BMW 主題的 _config.yml 檔案中有一個 keywords: Hexo, theme-bmw key-value 對。在 BMW 主題的 layout/_partial/header.ejs 檔案中,會優先選擇該 key-value 對,來做為網站首頁的關鍵字搜尋,而不是選擇我們之前提過的 Hexo 基本配置中的 keywords

可以直接修改 BMW 主題的 _config.yml 檔案中的 keywords 的值。

或是修改 BMW 主題的 layout/_partial/header.ejs 檔案,改成選擇 Hexo 基本配置中的 keywords

1
<meta name="keywords" content="<%= config.keywords %>" />

如果是以 theme 開頭的變數,表示 BMW 主題 _config.yml 檔案的變數。
如果是以 config 開頭的變數,表示 Hexo _config.yml 檔案的變數。

custom_style (自定義 css 檔案位置)

修改 BMW 主題的 _config.yml 檔案中的 custom_style 的值。因為我是將客製化的 css 檔案放在 BMW 主題的 source/custom 資料夾中,因此將配置修改成:

1
2
# 自定義 css 檔案位置
custom_style: /custom/檔案名稱.css

custom_script (自定義 js 檔案位置)

修改 BMW 主題的 _config.yml 檔案中的 custom_script 的值,客製化的 js 檔案一樣放在主題的 source/custom 資料夾中:

1
2
3
4
5
# 自定義 js 檔案位置 (以陣列形式支援多個 js 檔案)
custom_script:
-
src: /custom/檔案名稱.js
load: <script>加載方式(async/defer/默認)

修改 BMW 主題的 _config.yml 檔案中的 footer 的值:

BMW 主題的 layout/_partial/footer.ejs 檔案中,以 theme.footer.start 取得變數,如下:

再修改 footer.ejs 檔案中文字設定:

呈現結果如下:

leancloud (儲存數據的後端式服務)

BMW 主題的作者使用 LeanCloud 儲存留言紀錄瀏覽次數

作者使用 Valine 留言系統,我會改成 Disqus 留言系統。文章閱讀量統計之後會再搬移或以其他方式實現。

BMW 主題的 _config.yml 檔案中的 leancloud 的值修改成 false

1
2
3
4
5
leancloud:
appid: ************ # 填写您的appid
appkey: *********** # 填写您的appkey
comment: false # 是否开启评论系统
timer: false # 是否开启文章统计