Hexo-Fluid添加追番页面&&Bangumi 插件使用说明

本文最后更新于:2021年8月30日 下午

话不多少,立马开淦!

一、根据官方文档安装插件

参考Github项目地址

Bangumi

二、安装

$ npm install hexo-bilibili-bangumi --save

三、配置

将下面的配置写入站点的配置文件 _config.yml 里。(注意不是主题配置文件)

bangumi: # 追番设置
  enable: true
  path:
  vmid:
  title: '追番列表'
  quote: '生命不息,追番不止!'
  show: 1
  loading:
  metaColor:
  color:
  webp:
  progress:
  extra_options:
    key: value
cinema: # 追剧设置
  enable: true
  path:
  vmid:
  title: '追番列表'
  quote: '生命不息,追番不止!'
  show: 1
  loading:
  metaColor:
  color:
  webp:
  progress:
  extra_options:
    key: value
  • enable: 是否启用
  • path: 页面路径,默认bangumis/index.html, cinemas/index.html
  • vmid: 哔哩哔哩的 vmid(uid),如何获取?
  • title: 该页面的标题
  • quote: 写在页面开头的一段话,支持 html 语法,可留空。
  • show: 初始显示页面:0: 想看, 1: 在看, 2: 看过,默认为1
  • loading: 图片加载完成前的 loading 图片
  • metaColor: meta 部分(简介上方)字体颜色
  • color: 简介字体颜色
  • webp: 番剧封面使用webp格式(此格式在safari浏览器下不显示,但是图片大小可以缩小 100 倍左右), 默认true
  • progress: 获取番剧数据时是否显示进度条,默认true
  • extra_options: 此配置会扩展到Hexopage变量中

四、使用

  1. hexo new page "bangumis"bangumis的 md 文档加上type: "bangumis"

    image-20210830142639979

  2. 添加 uid

  3. hexo generatehexo deploy之前使用hexo bangumi -u命令更新番剧数据!

  4. 删除数据命令:hexo bangumi -d

五、获取 uid

登录哔哩哔哩后前往https://space.bilibili.com页面,网址最后的一串数字就是 uid

*需要将追番列表设置为公开!*

六、手动添加番剧数据

因为某些番剧在哔哩哔哩上没有,但是又想在 hexo 中展示,怎么办呢?现在支持手动添加番剧数据了!

sources/_data/ 目录下新建文件,命名为 extra_bangumis.json ,并添加以如下内容:

{
  "watchedExtra": [
    {
      "title": "缘之空", 
      "type": "番剧", 
      "area": "日本", 
      "cover": "https://cdn.jsdelivr.net/gh/mmdjiji/bangumis@main/Yosuga-no-Sora/cover.jpg", 
      "totalCount": "全12话", 
      "id": 0,
      "follow": "不可用", 
      "view": "不可用", 
      "danmaku": "不可用", 
      "coin": "不可用", 
      "score": "不可用", 
      "des": "远离都市的田园小镇,奥木染。春日野悠带着妹妹穹,来到了这座城镇。坐落在这里的是,儿时暑假经常造访的充满回忆的已故祖父的家。双亲因意外事故而丧生,变得无依无靠..."
    }
  ]
}

title 是番剧的标题,cover 是封面图链接, des 是简介,上述字段均根据需要修改。

另外除了 watchedExtra 数组,还可以在后面添加新的数组,可用数组名如下:

可用数组名 含义
wantWatchExtra 想看
watchingExtra 在看
watchedExtra 看过

需要注意,在两个数组之间需要用 , 分隔。

七、进行个性化修改

参考Matrey 主题增加豆瓣书/影单

1、ejs 文件的创建

/themes/fluid/layout文件夹下面创建一个名为 bangumi.ejs 的文件,并将下面的内容复制进去:

image-20210830142955916
<%- partial('_partial/post-cover') %> 
<style> 
    .bangumi-picture img { 
        width: 100%; 
    } 
</style> 
<main class="content"> 
    <div id="contact" class="container chip-container"> 
        <div class="card"> 
            <div class="card-content" style="padding: 30px"> 
                <h1 style="margin: 10px 0 10px 0px;"><%= page.title %></h1> 
                <%- page.content %> 
            </div> 
        </div> 
        <div class="card"> 
            <div class="card-content" style="text-align: center"> 
                <h3 style="margin: 5px 0 5px 5px;">如果你有好的内容推荐,欢迎在下面留言!</h3> 
            </div> 
        </div> 
        <div class="card"> 
            <% if (theme.gitalk && theme.gitalk.enable) { %> 
                <%- partial('_partial/gitalk') %> 
            <% } %> 
            <% if (theme.gitment.enable) { %> 
                <%- partial('_partial/gitment') %> 
            <% } %> 
            <% if (theme.disqus.enable) { %> 
                <%- partial('_partial/disqus') %> 
            <% } %> 
            <% if (theme.livere && theme.livere.enable) { %> 
                <%- partial('_partial/livere') %> 
            <% } %> 
            <% if (theme.valine && theme.valine.enable) { %> 
                <%- partial('_partial/valine') %> 
            <% } %> 
            <% if (theme.minivaline && theme.minivaline.enable) { %> 
                <%- partial('_partial/minivaline') %> 
            <% } %>     
        </div> 
    </div> 
</main>

最后面的几个<% if (*) { %> <% * %> <% } %>模块,可以根据实际运用模块进行删改

2、插件 moudle 内容修改

然后在博客站点目录下的 node_modules 文件夹下找到 hexo-bilibili-bangumi/lib,用文本编辑器打开文件夹。

下面两个 js 文件中的代码进行对应修改:

hexo-bilibili-bangumi\lib\bangumi-generator.js
hexo-bilibili-bangumi\src\lib\bangumi-generator.js
layout: ['page', 'bangumi']

本来的代码是layout: ['page', 'post']