butterfly修改及使用

编辑 / blog / 发布于2020-07-05 / 更新于2023-03-16 / 阅读 267

官方教程上有的就不在赘述了,仔细阅读官方文档能解决绝大部分问题。

评论

在使用评论系统之前需要首先 npm安装相应的插件,然后配置butterfly.yml中关于评论的设置。
如果不想在某个页面开启评论,可以在页面头部使用如下方式

---
title: butterfly修改
date: 2020-07-05 21:11:42
comments: false
---

valine评论添加QQ提醒

butterfly主题把下列js代码修改后添加到butterfly.yml中的inject后面就好了。
其他的需要将下列代码添加到一个位置,使每个有valine评论的页面有下列代码。
{% note warning %}
要先加Qmsg酱为好友。
{% endnote %}

    var title2="msg=您的博客又有新评论啦~ \n";
    var SCKEY_Qmsg=" ";
    function send_valine_Qmsg(){
        var pagename=document.title;
        var wz=pagename.indexOf('|');
        var res=pagename.substring(0,wz);
        var pageurl=document.URL;
        var ptime=new Date();
        var vnick=document.getElementsByClassName("vnick vinput")[0].value;
        var vmail=document.getElementsByClassName("vmail vinput")[0].value;
        var vlink=document.getElementsByClassName("vlink vinput")[0].value;
        var veditor=document.getElementsByClassName("veditor vinput")[0].value;
        var data="昵称:"+vnick+"\n邮箱:"+vmail+"\n网站地址:"+vlink+"\n当前页面:"+pagename+"\n评论内容:"+veditor+"\n跳转链接:"+pageurl+"\n评论时间:"+ptime.toLocaleString();
        var httpRequest = new XMLHttpRequest();
        httpRequest.open('POST',SCKEY_Qmsg, true); 
        httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");
        httpRequest.send(title2+data);
    };
    var ValineButton=document.getElementsByClassName("vsubmit vbtn")[0];
    ValineButton.onclick=send_valine_Qmsg;

SCKEY_Qmsg设置为Qmsg酱的接口地址。
转自零奇

图片

Github加载图片速度极慢,选择Gitee上的Gitee Pages作为图床,

{% note warning %}
在gitee的仓库中上传完图片后,一定要重新更新一下Gitee Pages服务后才能生效。
{% endnote %}

链接

此版本使用hexo-abbrlink插件生成永久链接时会出现bug,卸载解决。

引入Katex

使用时需要在front-matter里加入: katex: true
具体使用方法见katex

Subtitle

主页面的subtitle,在设置 source : 3一句 接口时出现了https错误。

Mixed Content: xxx This request has been blocked; the content must be served over HTTPS.

原因是在HTTPS页面中引入了HTTP的资源,解决方案实在页面头部插入

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

可以在 butterfly.yml 找到inject:head,在后面加入上述代码即可。

note标签

{% note simple %}
默認 提示塊標籤
{% endnote %}

{% note default simple %}
default 提示塊標籤
{% endnote %}

{% note primary simple %}
primary 提示塊標籤
{% endnote %}

{% note success simple %}
success 提示塊標籤
{% endnote %}

{% note info simple %}
info 提示塊標籤
{% endnote %}

{% note warning simple %}
warning 提示塊標籤
{% endnote %}

{% note danger simple %}
danger 提示塊標籤
{% endnote %}

butterfly 更新至 3.4.2 (2020/12/27)

  1. 添加了pjax

  2. 文章页目录改为aside显示

  3. 添加aplayer全局播放器

  4. 添加了豆瓣 电影、书籍、游戏

  5. 添加gitalk,和Qmsg的提示,变成gitalk和valine双评论

  6. aerith位置修改

  7. 添加steam,暂时先用着,作者很长时间没更新了,等之后有时间自己写一个好看点的。。。

  8. 添加老版本3.2,使用时需要将 _config.yml

 theme: butterfly-3.2

\source\_data\.butterfly.yml 改为 butterfly.yml

隐藏 Archives 的sidebar

  1. 修改 \theme\layout\includes\layout.pug 文件
  • 1、2行
- var htmlClassHideAside = (theme.aside.enable && theme.aside.hide)|| is_archive()==true? 'hide-aside' : ''
- var hideAside = !theme.aside.enable || page.aside === false || is_archive()==true ? 'hide-aside' : ''
  • 26行
          if theme.aside.enable && page.aside !== false && is_archive()==false