2020-01-02 Jekyll Theme各种问题大集合

上文书说道,个人博客已经安装且发布完成。那么,作为一个追求完美的理科男,免不了继续折腾。

由于自己不是前端开发,且亦不是页面设计,空有一副爱美之心,但委实没有设计美的能力,于是乎,还是在网上寻摸吧。

网上的Jekyll主题很多,但直入眼帘的就是廖柯宇或许是最漂亮的 Jekyll 博客主题: H2O

哎呦,不错呦,是我很喜欢的风格。搞过来~

说实话,在H2O之前也搞了几个主题,但是都碰到了这样那样的问题,不是Jekyll版本不匹配,就是缺少gem,不一而足,基本上没有一蹴而就的。
但是这个主题真是意外之喜,jekyll serve,一点问题没有,老顺畅了!

但是,运行预览没问题,不代表可以完全代替你的Blog,要想功能齐全并且展现你自己的小心思,还是需要各种小调整的。

1. _config.yml的调整

   # Author 配置博主信息
   author: '赵楠'
   nickname: 'leozhao0202'
   bio: ' 热爱研究技术 & 深挖历史<p>简单乐观 最求完美'
   avatar: 'assets/img/head.jpg'

   # Navigation links
   nav:
     home: '/'
     tags: '/tags.html'
     about: '/about.html'
   
   # Comments 评论功能
   gitalk_shortname: leozhao0202
   
   # Share
   social-share: true
   social-share-items: ['wechat', 'weibo', 'douban']
   
   # SNS settings 配置社交网站
   sns:
     weibo: '//weibo.com/1676238131'
     email: 'leozhao0202@outlook.com'
     github: '//github.com/leozhao0202'
     jianshu: '//www.jianshu.com/u/b4fe2ce9d9e5'
   
   # QRcode 首页二维码设置
   QRcode: true

   # statistic analysis 统计代码
   # 百度统计 id,将统计代码替换为自己的百度统计id
   baidu_tongji_id: xxxxxxxxxxxxxxxxxxxxxxxxxxx

# Author 配置博主信息:这里主要配置你的基本信息,展示你的个性。avatar是你的头像,请自拍一张自认为帅到溢于言表的selfie,放到assets/img/文件夹内,并在此设置。

# Navigation Links:这里定义在首页页首出现的菜单项,比如主题Demo原本只有home和tags,我自己增加了about页面。

# Comments 评论功能:主题原本使用的是Disqus评论系统,但是很遗憾的是国内已无法访问了。还有无数博客中提及的多说友言等等第三方评论系统,可惜都相继关闭了,然后还有搜狐的畅言系统,注册后才发现只有经过备案的网站才能使用,这个......嗯,我是经历过网站备案的,旷日持久(不知道现在是不是简便了)。我自己一个个人小博客,就没必要去备案了吧。所以找来找去,还是选择了Github自己的Gitalk。

# SNS settings 配置社交网站:这个是配置访问你的其他社交网站的快捷方式,就在首页你的头像下面,主要支持email, weibo, zhihu, twitter, instagram, juejin, github, douban, facebook, dribble, uicn, jianshu, medium, linkedin

# QRcode 首页二维码设置:这个是我在首页增加的一个二维码,便于手机用户直接访问。(本主题对手机用户的支持还是很好的。)

# Share:这个是第三方分享系统Share.js,支持以下社交站点。

Share Image

#statistic analysis 统计代码:原主题未添加统计模块,因此我在此增加了百度统计(谷歌的统计由于众所周知的原因是访问不了的......),详情请参考所链接文章Jekyll搭建博客并添加百度统计

2. 修改首页中的标题和图片

这个并未放在_config.yml中,后面如果有时间,我琢磨着还是把它放到_config.yml中更方便吧。

OK,那么它在哪儿呢?在index.html中的头文件信息中。

---
layout: default
home-title: 赵楠的故纸堆
description: 这里是我的记忆深处,一个理科男的善感多思
header-img: assets/img/banner.jpg
qrcode-img: assets/img/qrcode.png
---

header-img:就是主题首页正上方的图片,找一个自己喜欢的jpg或者png放到assets/img/文件夹内,然后在此定义即可。

qrcode-img:首页二维码图片,这个还涉及到index.html的部分代码修改,后面会细说。

3. 增加评论功能

如上面所述,我最终选择了Gitalk作为评论系统。关于如何为自己的博客增加Gitalk评论系统,请参考所链接文章Jekyll博客添加GitTalk评论

以下是我增加的一个comments.html页面,放在_includes文件夹内。

{% if site.gitalk_shortname %}

<!-- Gitalk评论框 start -->
<!-- Link Gitalk 的支持文件  -->
        <link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
        <script src="https://unpkg.com/gitalk@latest/dist/gitalk.min.js"></script> 
        <div id="gitalk-container"></div>
        <script type="text/javascript">
            var gitalk = new Gitalk({
            // gitalk的主要参数
                clientID: 'xxxxxxxxxxxxxx',
                clientSecret: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
                repo: 'leozhao0202.github.io',
                owner: 'leozhao0202',
                admin: ['leozhao0202'],
                id:window.location.pathname,
            });

            gitalk.render('gitalk-container');
        </script> 
<!-- Gitalk end -->

{% endif %}

其中clientID和clientSecret是在Github-->Settings-->Developer settings-->OAuth Apps设置完成后,Github提供的字符串。

然后修改_layouts文件夹内的post.html页面,在原disqus相关代码下增加引入上文新建的comments.html

    <!--主题原本使用的disqus评论相关代码 -->
    {% if site.comments.disqus %}
    <section class="post-footer-item comment">
        <div id="disqus_thread"></div>
    </section>
    {% endif %}
    <!--增加引入comments的代码 -->
    {% if site.gitalk_shortname %}
    <section class="post-footer-item comment">
      <h2 id="comments">评论</h2>
      {% include comments.html %}
    </section>
    {% endif %}

4. 首页增加QRcode

  1. _config.yml中设置QRcode: true

  2. 先在二维码制作的网站上生成一个你的博客网址的二维码,然后放到assets/img/文件夹内并在index.html文件头信息中定义。

  3. 修改index.html文件,在显示标签tags的相关代码下增加QRcode显示代码。

    <!--主题中显示标签tags的相关代码  -->
     {% if site.recommend-tags and site.tags.size>0 %}
      <section class="tags-card">{% raw %}
        {% for tag in site.tags %}
          {% if forloop.index > site.recommend-condition-size %}
            {% break %}
          {% endif %}
          <a href="{{ "tags.html#" | append: tag[0] | relative_url }}" 
             class="tag">{{ tag[0]}}</a>
        {% endfor %}{% endraw %}
      </section>
     {% endif %}
    <!--增加显示QRcode的代码 -->
     {% if site.QRcode %}
      <section class="sns-links" >
         <div class="avatar" align="center">                    
            <img src="{{ page.qrcode-img | relative_url }}" alt="">
         </div>
      </section>
     {% endif %}
    

5. 代码显示以及高亮的问题

以上修改完成后就基本完成修改,日后再有改动日后再说。

但是在编辑文章时,由于之前没接触过markdown,所以还是遇到了一些问题,这里先说一下代码的显示。也许你说,不是有关于代码块的说明吗,只要用一对```括起来就行啦。

呵呵,可惜,代码块不是万能的,有很多语句放到代码块里会出错,或者会执行你原本只是想展示的代码,造成文章错乱。{% assign openTag = '{%' %}

那该咋办呢?好在YAML语言给出了办法,在出问题的代码前后增加{{ openTag }} raw %}{{ openTag }} endraw %}即可。

注意,不建议对整篇文章增加{{ openTag }} raw %}{{ openTag }} endraw %},那样反而会影响代码的高亮。

下面紧接着就是代码高亮的问题,请见下图。

Highlighter Problem

这是个啥呀!可以说是啥都看不见啊!这个问题搞了好久,尝试修改css,也不行。

嗯,感觉主题所带的代码高亮插件prism.js没起作用啊。最后,还是上prism的官网下载了最新的js和css,才最终搞定。

6. 文章中的字体颜色

增加html中关于字体的代码即可。

<font color="navy">这段字应该是深蓝色的。</font>

<font color="navy">这段字应该是深蓝色的。</font>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容