​ 此篇更新已结束,遇到什么问题欢迎留言

​ 有关主题功能基本介绍的详情,请前往→優萌初華主页查看

​ 此篇文章主要补充了 shoka 主题博主主页教程中不够详细的部分要点

注意事项(推荐配置前先阅读)

# 1. 关于音乐、评论功能无效的问题

请确认 ./themes/shoka/_config.yml 中的 statics 参数是否为 \ ,若不是可能是 CDN 加速未缓存完成。

此外推荐未完全配置完主页功能时 statics 参数配置为 \ ,配置完后再改成 CDN 链接加速。

  • 另外,倘若你的音乐配置是 国外 的,在国内使用可能会出现网络问题导致无法使用;相应地,倘若你的音乐配置是 国内 的,在国外使用也可能会出现网络问题导致无法使用
  • 关于评论功能无效,一是由于没有成功配置好;二是由于网络问题,比如:倘若你是用 LeanCloud国际版 ,在国内使用时会出现评论区消失的问题 (与 Jsdelivr 的 CDN 链接有关);相应地,倘若你是用 LeanCloud华北\华东版 ,在国外使用时有时会出现评论区消失的问题 (与网络问题有关)

# 1. 关于 statics 参数配置会出现的问题 (待试验是否是个别例子)

当一开始就设置 statics 参数为 CDN 链接,则会出现头像自动移位现象 (位置从左边移动到右边),评论功能区域及音乐功能区域无法显示。

主页标签的文字提示

# 主页标签名的页内及页外的替换

原样式:

  • (●´3`●)やれやれだぜ
  • (´Д`) 大変だ!

对应修改文件位置: ./themes/shoka/languages 中对应语言中的 favicon 元素

加载动画

# 加载动画替换

CSS 样式对应修改的文件位置: ./themes/shoka/source/css/_common/components/third-party 中的 loading.styl 文件

html 对应修改的文件位置: ./themes/shoka/layout/_partials 中的 layout.njk 文件

//css
//`./themes/shoka/source/css/_common/components/third-party/loading.styl`
//保留下面这几行,其余删除后写入新样式
#loading {
  @extend $fix-fullscreen;
  background-color: var(--grey-1);
  if(!hexo-config('loader.start')) {
    display: none;
  }
}
//
	你的CSS样式代码
//
//HTML
//`/themes/shoka/layout/_partials/layout.njk`
<body itemscope itemtype="https://schema.org/WebPage">
  <div id="loading">
		//此处删除并重新写入css样式对应的html代码
  </div>
  <div id="container">
菜单按钮

# 主页菜单按钮名称添加

添加名称的对应修改文件位置: ./themes/shoka/languages 中对应语言中的 menu 元素

添加按钮的对应修改文件位置: ./themes/shoka 中的 _config.yml 文件的 menu 元素

//添加按钮英文对应的中文名称
//`/themes/shoka/language/zh-CN.yml`
menu:
  home: 首页
  posts: 文章
  archives: 归档
  categories: 分类
  tags: 标签
  about: 关于
  search: 搜索
  friend-links: 友链
  books: 书架
  deeplearning-books: 人工智能
  computer-books: PC端技能
  phone-books: MD端技能
//主页顶部menu部分按钮添加
//`/themes/shoka/_config.yml`
menu:
  home: / || home
  about: /about/ || user
  posts:
     default: / || feather
     archives: /archives/ || list-alt
     categories: /categories/ || th
     tags: /tags/ || tags
  friend-links: /friend-links/ || heart
  books:
     default: / || clipboard
     deeplearning-books: /books/deeplearning-books/ || fedora
     computer-books: /books/computer-books/ || opera
     phone-books: /books/phone-books/ || android

网页底部注释

# 主页底部注释的增添

对应修改文件位置: ./themes/shoka/layout/_partials 中的 footer.njk 文件。

shoka主题图标与图标的使用

# 查看 shoka 主题的图标有那些

对应文件位置: ./themes/shoka/source/css 中的 _iconfont.styl 文件

//HTML使用方法例子(ic i-clock为替换部分)
<i class="ic i-clock" aria-hidden="true"></i>
搜索功能的详细介绍

  • 先去官网注册,进入到 welcome 页面后,点击 API keys 进入页面内,在 All API Keys 页面处点击 New API key 并填写相关信息。
  • 例子

  • 新建好之后在 根目录的_config.yml 中配置 algolia 相关参数 (可在 algolia 官网的 API Keys 页面的 Your API Keys 中查看)

    algolia:
       appId: "Application ID对应码"
       apiKey: "API Keys页面的All API Keys中刚刚新建的API key的对应码"
       adminApiKey: "Admin API Key对应码"
       chunkSize: 5000
       indexName: "你填写的Indices部分"
       fields:
         - title #必须配置
         - path #必须配置
         - categories #推荐配置
         - content:strip:truncate,0,4000
         - gallery
         - photos
         - tags
  • 配置好后在根目录 (hexo 根目录) 右键点击 Git Bash Here ,输入 hexo algolia 即可,最后记得重新缓存。

  • 注意 ,每次有新文章发布,都需输入 hexo algolia 指令

评论功能的详细介绍

# 1. 评论基本功能

  • 先去 LeanCloud 官网注册,认证之后点击左上蓝色图标,进入后点创建应用

  • 例子

  • 创建好后,在 ./themes/shoka/_config.yml 中配置 valine 相关信息。(相关信息可在 LeanCloud 刚刚创建的应用中的设置处点击应用凭证查看)

valine:
  appId: "AppID对应码" #Your_appId
  appKey: "AppKey对应码" #Your_appkey
  placeholder: "在评论框内显示的提示语"
  avatar: mp # Gravatar style : mp, identicon, monsterid, wavatar, robohash, retro
  pageSize: 10 # Pagination size
  lang: zh-CN
  visitor: true # Article reading statistic
  NoRecordIP: false # Whether to record the commenter IP
  serverURLs: https://(xxx).api.lncldglobal.com #LeanCloud 国际版时需配置,括号内为 appid 的前八位,记得删除括号									 
  powerMode: true
  tagMeta:
    visitor: 新朋友
    master: 博主
    friend: 小伙伴
    investor: 会员
  tagColor:   #visitor 可以不用配置颜色
    master: "#a77c59"
    friend: "#855194"
    investor: "#ed6ea0"
  tagMember:  #评论区管理员和小伙伴们的标签定制处
    master:
      # - hash of master@email.com
      # - hash of master2@email.com
    friend:
      # - hash of friend@email.com
      # - hash of friend2@email.com
    investor:
      # - hash of investor1@email.com

# 2. 个性头像

  • 先去 Gravatar官网 注册邮箱,之后在出现的 Manage Gravatars 页面中的 Pick new image 处添加图片
  • Pick email to modify 处可添加新的邮箱,点击 View rating 可查看邮箱 hash
  • 此处的 hash码 可填入 ./themes/shoka/_config.ymlvaline参数 下的 tagMember 中的 master 处 (评论区显示管理员的对应标签)
  • 配置好后,有缓存时间,最慢有 7 天缓存时间

# 3. 评论管理及提醒功能

shoka 主题博主使用的 Valine-Admin 魔改评论系统的留言回复 部分功能 已经失效了

此处提供比较流行并有效的其中一种办法 - Github Action

  • 前提:先在 LeanCloud 官网设置中的 域名绑定 处绑定域名和 访问域名中的共享域名 添加 你绑定的域名后缀前面的名字 ,并且已经配置好了 Valine-Admin (其中的定时任务已不需要配置,已失效)

  • 例子

  • 绑定的云引擎域名为 www.reversesacle.com (xxxx.github.io)
    则共享域名处可填写为 reversesacle  (xxxx)
    ADMIN_URL填写为 https://reversesacle.avosapps.us/  (https://xxxx.avosapps.us/)

    彩色留言评论通知,只有博主的通知没有彩色效果

  • MAIL_TEMPLATE 的值为

  • <div style="border-radius: 10px 10px 10px 10px;font-size:13px;    color: #555555;width: 666px;font-family:'Century Gothic','Trebuchet MS','Hiragino Sans GB',微软雅黑,'Microsoft Yahei',Tahoma,Helvetica,Arial,'SimSun',sans-serif;margin:50px auto;border:1px solid #eee;max-width:100%;background: #ffffff repeating-linear-gradient(-45deg,#fff,#fff 1.125rem,transparent 1.125rem,transparent 2.25rem);box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);"><div style="width:100%;background:#49BDAD;color:#ffffff;border-radius: 10px 10px 0 0;background-image: -moz-linear-gradient(0deg, rgb(67, 198, 184), rgb(255, 209, 244));background-image: -webkit-linear-gradient(0deg, rgb(67, 198, 184), rgb(255, 209, 244));height: 66px;"><p style="font-size:15px;word-break:break-all;padding: 23px 32px;margin:0;background-color: hsla(0,0%,100%,.4);border-radius: 10px 10px 0 0;">您在<a style="text-decoration:none;color: #ffffff;" href="${SITE_URL}"> ${SITE_NAME}</a>上的留言有新回复啦!</p></div><div style="margin:40px auto;width:90%"><p>${PARENT_NICK} 同学,您曾在文章上发表评论:</p><div style="background: #fafafa repeating-linear-gradient(-45deg,#fff,#fff 1.125rem,transparent 1.125rem,transparent 2.25rem);box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);margin:20px 0px;padding:15px;border-radius:5px;font-size:14px;color:#555555;">${PARENT_COMMENT}</div><p>${NICK} 给您的回复如下:</p><div style="background: #fafafa repeating-linear-gradient(-45deg,#fff,#fff 1.125rem,transparent 1.125rem,transparent 2.25rem);box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);margin:20px 0px;padding:15px;border-radius:5px;font-size:14px;color:#555555;">${COMMENT}</div><p>您可以点击<a style="text-decoration:none; color:#12addb" href="${POST_URL}#comments">查看回复的完整內容</a>,欢迎再次光临<a style="text-decoration:none; color:#12addb"                href="${SITE_URL}"> ${SITE_NAME}</a></p><style type="text/css">a:link{text-decoration:none}a:visited{text-decoration:none}a:hover{text-decoration:none}a:active{text-decoration:none}</style></div></div>
  • MAIL_TEMPLATE_ADMIN 的值为

  • <div style="border-top:2px solid #12ADDB;box-shadow:0 1px 3px #AAAAAA;line-height:180%;padding:0 15px 12px;margin:50px auto;font-size:12px;"><h2 style="border-bottom:1px solid #DDD;font-size:14px;font-weight:normal;padding:13px 0 10px 8px;">您在<a style="text-decoration:none;color: #12ADDB;" href="${SITE_URL}" target="_blank">${SITE_NAME}</a>上的文章有了新的评论</h2><p><strong>${NICK}</strong>回复说:</p><div style="background-color: #f5f5f5;padding: 10px 15px;margin:18px 0;word-wrap:break-word;"> ${COMMENT}</div><p>您可以点击<a style="text-decoration:none; color:#12addb" href="${POST_URL}" target="_blank">查看回复的完整內容</a><br></p></div></div>
  • 配置好后,可前往我的 Github 仓库→Auto_Wake_LeanCloud,按仓库里面的说明来操作;或者在 Github 内搜寻其他用于 LeanCloud唤醒 的仓库

  • 评论后台地址指 云引擎WEB中部署 里面生产环境下面的链接

  • 评论管理注册地址: https://xxxx.avosapps.us/sign-up

  • 评论管理地址 (后台地址): https://xxxx.avosapps.us/

主要图片所在位置的介绍

对应修改的文件位置: ./themes/shoka/source/images

  • avatar.jpg 对应为 头像
  • favicon.icofailure.ico 对应为 页内页外 的标签处 logo
  • alipay.png 等以 ..pay.png 结尾的表示为 赞赏按钮 对应的 二维码
  • 至于其他图片的功能,看图片名字即可知道用途

赞赏按钮图片的修改位置: ./themes/shoka/_config.yml 中的 reward 元素内容

Hexo相关问题及文章有插入图片时的问题

# 1.Hexo 文章常用命令

  • hexo new post 标题与文件名 发布一篇新文章
  • hexo new page 标题与文件夹名 发布一个新的页面 (例如顶栏的菜单按钮对应的页面)

# 2. 常用文章 markdown 的 Front Matter 配置

title: Hexo-Shoka主题功能介绍补充点		#文章名字
date: 2021-11-28 01:04:31			  #日期
tags: 主题,进阶						   #文章内容的标签
cover: https://cdn.jsdelivr.net/gh/...../202111221645525.jpg	#封面图片
sticky: true						 #是否置顶
fancybox: false						 #展示外接链接图片时需要配置
#type: "about"						 #当新建一个页面时需配置此参数
  • 当使用上面所提及的 post 命令时会自动配置好 title,date,tags 这几项。
  • 当使用上面所提及的 page 命令时会自动配置好 title,date,tags,type 这几项, type 需自行填写

# 3. 当文章有外接链接图片时此页面无法刷新

  • 报错类型
  • 解决方法:在文章中添加 fancybox: false 的 Front Matter 配置即可
文章阅读时常
  • 变更文件位置:hexo 根目录下的 _config.yml 文件
#变更每篇文章的阅读时常
#shoka 主题没有配置 `symbols_count_time` 元素,即 `默认` 采取了默认的 symbols_count_time 配置
#倘若想 `变更` 配置,可通过 `覆盖` 相应配置就行了,做法是直接在该 `文件末尾添加` 即可
#添加元素如下
symbols_count_time:
  symbols: true
  time: true
  total_symbols: true
  total_time: true
  exclude_codeblock: false
  awl: 3
  wpm: 245
  suffix: "mins."
  
#exclude_codeblock: 是否排除代码块区域的字数统计
#	awl: 平均字符长度 (多少符字算一个中文或英文) 中文约是 2,英文约是 5,其他约是 6
# 	wpm: 每分钟阅读字数  正常值约为 275 字,较小值约为 200 字,较快值约 350 字
#suffix: 当总字数小于每分钟阅读字数时,默认采取的时间类型,不填写默认类型采取 "mins."
图床配置及图片加载问题

# 关于图床配置

  • (可选・方法一) 对应背景图片及文章封面图片修改地址: ./themes/shoka 中的 _images.yml
  • (可选・方法二) 在 ./source/ 中创建 _data 文件夹并在此文件夹下创建 images.yml 文件
  • 倘若你已经有图床可用,那么这里 推荐 你继续使用现有的图床
  • 修改例子 (可在 _images.yml 文件或 images.yml 文件中添加也可直接替换)

# 关于 PicGo

  • PicGo 是目前主流图床的集合 API,支持 SM.MS,腾讯云COS,Github,七牛,Imgur,阿里云OSS,又拍云 等图床,另外 PicGo 还可自行安装其他图床插件

  • 据目前所知,上传区中的链接格式中 URL 格式不可使用

  • 将图片托入即可上传,也可批量托入,可上传各种图片格式,gif 格式也可以;上传后在相册中查看

  • 对于上传速度,较慢可开启科学上网工具 (梯子)

# Github 图床配置

  • 前言 :由于 Jsdelivr 在国内的 备案问题 导致图片外链链接在 国内的加速效果 一般,若对此问题不是 很敏感 可忽略此前言

  • 先在 Github 中新建一个公开的仓库

  • 之后点击 Github头像 进入 Settings, 再点击 Developer settings 进入到 Personal access tokens 并点击 Generate new token

  • token 例子,只选 repo 即可;其中 Expiration 为凭证到期时长,当过期时可在此凭证中点击 Regenerate token 重置时长

  • 之后可以在此页面看到新添加的 token 以及 一串编码 ,此编码就是 token ,此外这个 token 编码 只能看到这一次 ,记得保存

  • 弄好上面步骤后,安装 PicGo, -x64.exe 为 64 位系统, -ia32.exe 为因特尔 32 位

  • 安装后打开,不会弹出主界面,要在系统托盘处双击打开;在 PicGo 中点击 PicGo 设置将时间戳重命名打开,其他设置可自行按需配置

  • 之后点击图床设置找到 GitHub 图床 (不支持相册与 Github 仓库的同步删除)

  • ( 可选 ) 推荐使用 github-plus 插件代替初始的 Github图床引擎 ,配置完全一致,但此插件支持 同步PicGo内相册处的删除 功能 (例如:PicGo 相册内删除某一张图片,相应 Github 仓库内也会删除对应的图片 (可在 PicGo的插件设置 处搜索安装)

  • 图床配置例子

  • 设定仓库名为 Github用户名/仓库名

  • 设定自定义域名推荐 Jsdelivr 的 CDN 加速链接,配置: https://cdn.jsdelivr.net/gh/你的Github用户名/Github仓库名@main

  • 指定存储路径指你新建仓库里的文件夹名,没有会自动创建一个新的指定文件夹并在里面存放图片

# 关于图片大小及加载速度问题

  • 假设你原来的图片是 超高清图片 ,当打开你的主页时顶部的图片播放及文章的封面加载会因 网速限制 而不时加载失败或等待时间过长
  • 因此最好将你的 高清图片 进行 压缩 ,压缩后 视觉观感 质量并不会下降多少,单张图片压缩推荐谷歌出品的 Squoosh ;此外,批量压缩和 Gif 压缩就不推荐了,目前对于批量压缩和 Gif 压缩的问题,不同的产品都有对应的缺点和不适感,若想使用可自行搜索。
  • 注意 ,压缩格式中目前还不太推荐 AVIF ,即便是最好之一的图片格式,但还存在浏览器的适配问题
  • 此外,倘若你是用 Jsdelivr外链CDN加速链接或自费图床 来作图床链接的用户,更应该 压缩 你的图片,通过压缩图片能在达到损耗少量图片质量的前提下大大降低图片的存储大小
  • 这里推荐压缩格式为 Webp ,将图片分辨率定格在 2k或2k以下Width <= 2560 · Height <= 1440 ,压缩后图片大小一般都不会不超过 500kb

# 倘若你是使用 Webp 图片格式或其他格式

hexo-shoka主题中需要修改对于图片的后缀
##倘若`./themes/shoka/source/images`目录下的文件都被压缩为.webp格式或其他格式
##`.ico`文件不建议压缩或改动
##`avatar.jpg`格式也不建议改动,因为你的头像可能正在被其他人使用中;倘若你是刚初始配置博客,推荐压缩;
  • 修改文件路径・ ./themes/shoka/_config.yml
  • 修改文件路径・ ./themes/shoka/scripts/tags/links.js
  • 修改文件路径・ ./themes/shoka/source/css/_common/components/pages/pages.styl
  • 修改文件路径・ ./themes/shoka/source/css/_common/components/tags/player.styl
  • 修改文件路径・ ./themes/shoka/source/css/_common/components/third-party/search.styl

# 倘若你目录对应的 cover 图片都进行了压缩并更换了图片格式

  • 修改文件路径・ ./themes/shoka/layout/_macro/card.njk
  • 修改文件路径・ ./themes/shoka/scripts/generaters/index.js
  • 修改文件路径・ ./themes/shoka/scripts/helpers/list_categories.js
添加网站浏览量统计功能
  • 此处只介绍 不蒜子计数器 ,因为比较简单
  • ./themes/shoka/source/js 目录下创建新文本文档文件并改名为 busuanzi.pure.mini.js
  • busuanzi.pure.mini.js 里添加以下代码
var bszCaller, bszTag;
! function () {
    var c, d, e, a = !1,
        b = [];
    ready = function (c) {
        return a || "interactive" === document.readyState || "complete" === document.readyState ? c.call(document) : b.push(function () {
            return c.call(this)
        }), this
    }, d = function () {
        for (var a = 0, c = b.length; c > a; a++) b[a].apply(document);
        b = []
    }, e = function () {
        a || (a = !0, d.call(window), document.removeEventListener ? document.removeEventListener("DOMContentLoaded", e, !1) : document.attachEvent && (document.detachEvent("onreadystatechange", e), window == window.top && (clearInterval(c), c = null)))
    }, document.addEventListener ? document.addEventListener("DOMContentLoaded", e, !1) : document.attachEvent && (document.attachEvent("onreadystatechange", function () {
        /loaded|complete/.test(document.readyState) && e()
    }), window == window.top && (c = setInterval(function () {
        try {
            a || document.documentElement.doScroll("left")
        } catch (b) {
            return
        }
        e()
    }, 5)))
}(), bszCaller = {
    fetch: function (a, b) {
        var c = "BusuanziCallback_" + Math.floor(1099511627776 * Math.random());
        window[c] = this.evalCall(b), a = a.replace("=BusuanziCallback", "=" + c), scriptTag = document.createElement("script"), scriptTag.type = "text/javascript", scriptTag.defer = !0, scriptTag.src = a, document.getElementsByTagName("head")[0].appendChild(scriptTag)
    },
    evalCall: function (a) {
        return function (b) {
            ready(function () {
                try {
                    a(b);
                    if(scriptTag.parentElement) scriptTag.parentElement.removeChild(scriptTag)
                } catch (c) {
                    console.error(c), bszTag.hides()
                }
            })
        }
    }
}, bszCaller.fetch("//busuanzi.ibruce.info/busuanzi?jsonpCallback=BusuanziCallback", function (a) {
    bszTag.texts(a), bszTag.shows()
}), bszTag = {
    bszs: ["site_pv", "page_pv", "site_uv"],
    texts: function (a) {
        this.bszs.map(function (b) {
            var c = document.getElementById("busuanzi_value_" + b);
            c && (c.innerHTML = a[b])
        })
    },
    hides: function () {
        this.bszs.map(function (a) {
            var b = document.getElementById("busuanzi_container_" + a);
            b && (b.style.display = "none")
        })
    },
    shows: function () {
        this.bszs.map(function (a) {
            var b = document.getElementById("busuanzi_container_" + a);
            b && (b.style.display = "inline")
        })
    }
};
  • 添加完成后记得保存,之后再在 ./Blog/themes/shoka/layout/_partials 目录下,打开 layout.njk 文件
  • 在开头的 <head> 标签结尾处添加
  • 之后在 ./themes/shoka/layout/_partials 目录下,打开 footer.njk 文件
  • {%- if theme.footer.count %} 内合适的位置添加 <span id="busuanzi_value_site_pv"></span>次</span>
  • 例子写法

<i class="ic i-eye" aria-hidden="true"></i><span id="busuanzi_value_site_pv"></span>次

Google字体带来的网络延迟问题

  • Google 字体官方链接 fonts.googleapis.com ,只适用于国外网络,在国内基本无法使用,这会造成网页完全打不开或打开时常非常久的问题
  • 此外,Google 官方还提供了国内加速链接 fonts.googleapis.cn ,但使用国外网络时存在延迟很高的问题
  • 倘若想国内与国外的问题都一同解决,需要一个能自由切换链接的功能
  • 此处,暂时推荐 Source Global CDN 的公共加速链接,修改方法如下
  • 修改文件路径为: ./themes/shoka/scripts/helpers/asset.js
博客后台刷新(CDN/Jsdelivr缓存刷新)问题

# 关于缓存刷新时间过长问题的解决方法 (URL)

  • 在浏览器中将 /themes/shoka/_config.yml 中的 staticcdn加速链接 复制到浏览器的网址栏中并将 https://cdn.jsdelivr.net/..... 改为 https://purge.jsdelivr.net/..... 后回车即可刷新缓存
  • Github Pages 的案例
statics:  https://cdn.jsdelivr.net/gh/你的Github用户名/你的Github用户名.github.io@main/
在浏览器网址栏输入:https://purge.jsdelivr.net/gh/你的Github用户名/你的Github用户名.github.io@main/
Jsdelivr在国内被墙的暂时解决方案
  • 目前有多种方案,这里只提出三个暂时解决方案,只解释 方案三
  • (方案一) Jsdelivr 反向代理 (这里不做解释)
  • (方案二) 更换国内静态托管网站 (如:七牛云等,不做解释)
  • (方案三) 更换 cdn节点fastly节点
// 方案三
// 修改文件路径:`./themes/shoka/scripts/helpers/asset.js`
//58 行 - 66 行
····················
  //let result = vendorJs ? `<script src="https://cdn.jsdelivr.net/combine/${vendorJs}"></script>` : '';
  let result = vendorJs ? `<script src="https://fastly.jsdelivr.net/combine/${vendorJs}"></script>` : '';
  //  return vendorJs ? htmlTag('script', { src: `https://cdn.jsdelivr.net/combine/${vendorJs}` }, '') : '';
  return vendorJs ? htmlTag('script', { src: `https://fastly.jsdelivr.net/combine/${vendorJs}` }, '') : '';
});
// 修改文件路径:`./themes/shoka/source/js/_app/utils.js`
//27 行 - 30 行
···············
  // if(str.indexOf('npm')>-1||str.indexOf('gh')>-1||str.indexOf('combine')>-1)
  //   return "https://cdn.jsdelivr.net/" + str
  if(str.indexOf('npm')>-1||str.indexOf('gh')>-1||str.indexOf('combine')>-1)
    return "https://fastly.jsdelivr.net/" + str
···············
//修改文件路径:`./themes/shoka/_config.yml`
//statics: https://cdn.jsdelivr.net/gh/你的Github用户名/你的Github用户名.github.io@main/
statics: https://fastly.jsdelivr.net/gh/你的Github用户名/你的Github用户名.github.io@main/
//倘若你是通过创建`./source/_data/images.yml`文件夹来配置图床图片
//推荐用`Notepad++`打开后,按Ctrl + F键后选择替换,
//查找目标填`cdn`,替换为填`fastly`,最后按全部替换按钮
//修改文件路径:`./source/_data/images.yml`
//- https://cdn.jsdelivr.net/gh/xx/Gallery@main/blog-img/xxxx.webp
- https://fastly.jsdelivr.net/gh/xx/Gallery@main/blog-img/xxxx.webp
//倘若不是上面通过创建文件来配置图床图片
//修改文件路径:`./themes/shoka/_images.yml`
//其余操作同上
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

ReverseSacle 微信支付

微信支付

ReverseSacle 支付宝

支付宝