BUG | 增加 Maupassant 主题全站字数统计
写在前面
总之最终效果请看网站最下方——要解决的还挺多的,比如我还是没弄明白怎么给每个部分前加个小图标,想改掉页尾部分的宽度让居中更美观,还想加一点其他的东西…… 现在解决小图标是用的特殊字符,其实我觉得效果也不错。
以及真的好羡慕隔壁 Next 主题啊,隔壁开这些功能就没 Maupassant 这么麻烦…… 搜教程的时候经常就是 “今天想看看怎么统计全站字数我们来搜搜教程吧!”“全世界都是 Next 教程一看原来他们已经集成过了!”
况且 Next 用的是 Swig,Maupassant 用的是 jade(这也是我这次研究才搞明白的,而且 jade 和 pug 居然是一个东西),两者不通用,抄代码就更难了,除了表演现场跳楼我也没什么可做的了……
总之不管怎么样其实还挺简单的
说起来为了抄代码,我 Google 了大概也就两个小时吧,抛去各种试错补救错上加错网站崩溃拖备份重置的过程,最后跟着这么做你就能有一个长得很丑的字数统计了,真是完全不期待。
先讲一下思路吧,虽然是抄的代码但是还是学到了点东西。
就,昨天就在想,Next 主题和 Maupassant 统计单篇字数和全站用的都是同一个 WordCount 插件,也就是说其实功能已经有了,只是 Maupassant 没有在代码里写出来而已。而这个时候我已经知道了页尾文件是 E:\hexo\themes\maupassant\layout\_partial\footer.pug
,这就说明我们倒腾来倒腾去,需要倒腾的就是 footer.pug
这个文件。
那么打开 footer.pug,代码长这样:
#footer= 'Copyright © ' + date(Date.now(), 'YYYY') + ' ' |
研究一下和原来页尾的对应:
很明显是一段一对应的状态,既然插件已经装上去了,那用一段代码来描述一下(是这个词儿吗)让它显示全站字数不就完了。于是大刀阔斧地备份后先把所有的代码都删掉,打开了 google,搜索 Next 主题,决定先抄一下它的代码。
……Next 主题文档做得真好看,Next 主题的配置文件做得真详细,我好嫉妒。
虽然直接抄没有用(崩溃地搜了搜发现用的语言不一样而且没有转换器只有 html 转 jade),但是大概知道了这一段长成什么样,应该找什么新的关键词,再一顿 Google,发现了一个直接 po 了代码的好人 Hexo 集成 WordCount 插件
文章中写出了完整的 WordCount 插件使用的 jade 代码:
// 文章字数,阅读用时 |
把最后一段抄下来贴到 footer.pug
文件里,发现字数统计有了,但是委屈巴巴地窝在左下角,字号也小了,但是不管怎么样字数统计有了,耶!
解决字数统计样式问题
东西有了就得解决不够美观的问题,一是 字数统计 位置问题,二是 字号大小 问题。
字数统计 问题解决得特别神奇,Google 了半天无果,只通过对各种代码以及 CSS 文件的试错确认了样式应该就在这几行代码里,不用去其他地方改,然后突然脑子不知道搭错了哪根弦,抬手把代码里的 div
改成了 span
,改完这样:
span(style='margin-top:10px;') |
hexo s -debug
一试,发现位置问题解决了,目瞪口呆。
最后在 footer.pug
上写的完整代码为:
#footer= '♛ 在这里的是:' + date(Date.now(), ' 懒云 | ') + ' ' |
字号大小 问题用到了 F12 审查元素,翻了半天 F12 发现在 css 文件的这儿:
#footer { |
把所有看起来像字号的地方都试了一遍发现我可能眼瞎,明显是 font-size: .9em;
这一行嘛…… 改成 14px 就搞定了
为了简化 font-size 的换算,可以在 css 中的 body 中先全局声明 font-size=62.5%,也就是定义了默认字体大小为 16px*0.625=10px, 子元素会继承父级元素的字体大小,于是 1em=10px,所以 12px=1.2em ——by Google
遗留问题:
发现这一行没居中——准确的是,居的是整个页面左侧大栏的中,这样歪的就很难受,通过 F12 找到了应该改什么,但是就是没找到在哪儿改
我学会了:
Next 用的是 Swig,Maupassant 用的是 jade,这两个不太一样但是可以用 html 转 jade。
熟练使用 F12 审查元素找应该改什么 CSS 项,为什么表述得这么奇怪呢因为我也不知道怎么说比较对。
em 和 px 之间的关系,学到了一个新参数。
一个备用的 CSS text-align 属性解释,并且看完了才发现这就是旋岚给我的自学网站。
就算看不懂,不管三七二十一,先把能替换的替换一下看看哪个变了。
我还想折腾:
给 blog 开个留言板,不要每篇文章底下的评论只开留言板,其实我已经设置好了 valine,但是好懒哦等晚点我再研究能不能关掉评论。
等我学会了前端技术我还要在页尾加一个全站总篇数。
说来惭愧,我还是不会在文章中插入图片………………