为Ghost博客扩展代码高亮、数学公式、页面统计、评论
前几天捣鼓了一下博客首页,接下来再丰富一下博客页面的功能与内容。由于我所使用的Ghost博客专注于轻量简洁,因此标题中提到的功能在Ghost中默认均不支持。下面将逐个介绍一下如何为Ghost扩展这些功能。
代码高亮
代码高亮的方案很多,我在Hexo的某个主题上注意到了highlight.js这个插件。
这个插件默认支持23中主流编程语言以及100多种代码高亮主题,基本满足你的需求。还不满意?你可以在官网选择你希望支持的编程语言进行定制。
我使用官网介绍的CDN方式嵌入highlight.js
。在网页head
标签下插入下面两行代码:
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"> <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
其中第一句下载的是主题样式文件,default是默认主题,我自己改成了monokai-sublime。
然后在body
结束位置插入启用代码即可,插件可以自动检测代码所使用的语言。
<script>hljs.initHighlightingOnLoad();</script>
更多配置可以查阅其官网,不在此赘述。
下面展示一下简单的JavaScript
代码被高亮后的效果:
数学公式
引入数学公式支持是考虑到接下来我将可能写一些数学相关的文章。目前发现MathJax是口碑比较好的插件,其使用方法也很简单。
使用CDN方式在网页head
插入MathJax的代码就完成安装工作。
<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML'></script>
使用的时候MathJax默认会识别两种标记$$ ... $$
和\( ... \)
,并把其中的内容当成数学公式处理。这两种标记的区别:前者独立成行显示,如p
标签;后者作为行中的一部分,如span
标签。
需要提醒使用MarkDown写博客的人,反斜杠需要转移,即\( ... \)
需要写成\\( ... \\)
,否则会MathJax会找不到内容。
MathJax针对这种情况提供了自定义起始标签的配置功能。在引入代码的位置插入配置内容即可。我这里使用$- ... -$
代替默认的\( ... \)
如下:
<script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML"> MathJax.Hub.Config({ tex2jax: {inlineMath: [['$-','-$'], ['\\(','\\)']]} }); </script>
下面举个例子:
When $- a \ne 0 -$, there are two solutions to $- ax^2 + bx + c = 0 -$ and they are
$$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$
它的显示结果如下:
页面统计
这里提到的页面统计专指在网页中显示网站的访问量,请注意区别于类似百度统计等数据分析平台。
在知乎和V2EX上看到网友推荐使用LeanCloud的比较多。这种方案相当于使用远程数据库做统计服务接口,需要额外多做一些工作。
我比较懒,希望能够找到一种简单代码注入就能实现的方案。在知乎的角落里看到别人介绍了不蒜子busuanzi.ibruce.info。
看它的官网觉得更像个个人网站,目前未对外开放注册。反正这些I don't care
,它号称两行代码就能显示统计内容完全满足了我的需要,因此就选择它了。
第一步:安装代码的方式:
<script async src="//dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js"> </script>
第二步:在合适的地方显示统计信息(自己根据id选择需要的字段)
<!-- 整站统计 --> <span id="busuanzi_container_site_uv"> 本站总访问量<span id="busuanzi_value_site_pv"></span>次 本站访客数<span id="busuanzi_value_site_uv"></span>人次 </span> <!-- 单页面统计 --> <span id="busuanzi_container_page_pv"> 本文总阅读量<span id="busuanzi_value_page_pv"></span>次 本文访客数<span id="busuanzi_value_page_uv"></span>人次 </span>
评论
前些年多说几乎遍布每个个人网站,在此之前我也用过多说。但随着多说和网易云跟帖的倒台,我才开始关注其他的替代品,如畅言(需备案)、dispus(需FQ)、来比力等。综合考虑,我选择了来比力livere.com。
进入来比力官网首页,点击导航栏上的安装
,选择City版
(适合个人的免费版本),点击现在安装
,提示需要登录(没账号先用邮箱注册)。
然后输入网站的基本信息即可生成代码。把代码插入你的网页适当的位置即可。
下次登录来比力官网可以进入你的管理后台查看和管理评论数据,如下图:
本文同步博客