mirror of
https://github.com/jerryc127/hexo-theme-butterfly.git
synced 2025-09-15 12:58:48 +08:00
feat: CDN 可配置為 unpkg
fix: 評論系統開啟時 busuanzi 的 page_pv 不顯示
This commit is contained in:
parent
9a86429484
commit
b4d3ea86bb
@ -836,11 +836,11 @@ inject:
|
||||
# 非必要請不要修改
|
||||
CDN:
|
||||
# The CDN provider of internal scripts (主題內部 js 的 cdn 配置)
|
||||
# option: local/jsdelivr
|
||||
# Dev version cannot choose jsdelivr (dev版的主題不能設置為 jsdelivr)
|
||||
# option: local/jsdelivr/unpkg
|
||||
# Dev version cannot choose jsdelivr/unpkg (dev版的主題不能設置為 jsdelivr/unpkg)
|
||||
internal_provider: local
|
||||
# The CDN provider of third party scripts (第三方 js 的 cdn 配置)
|
||||
# option: local/jsdelivr
|
||||
# option: local/jsdelivr/unpkg
|
||||
# when set it to local, you need to install hexo-butterfly-extjs
|
||||
third_party_provider: jsdelivr
|
||||
option:
|
||||
|
||||
@ -63,23 +63,18 @@
|
||||
|
||||
- const commentUse = comments.use
|
||||
if commentUse && !comments.lazyload
|
||||
case commentUse[0]
|
||||
when 'Valine'
|
||||
if theme.valine.visitor
|
||||
+pvBlock(url_for(page.path),'leancloud_visitors',page.title)
|
||||
span.leancloud-visitors-count
|
||||
when 'Waline'
|
||||
if theme.waline.pageview
|
||||
+pvBlock('','','')
|
||||
span.waline-pageview-count(data-path=url_for(page.path))
|
||||
when 'Twikoo'
|
||||
if theme.twikoo.visitor
|
||||
+pvBlock('','','')
|
||||
span#twikoo_visitors
|
||||
default
|
||||
if theme.busuanzi.page_pv
|
||||
+pvBlock('','post-meta-pv-cv','')
|
||||
span#busuanzi_value_page_pv
|
||||
if commentUse[0] === 'Valine' && theme.valine.visitor
|
||||
+pvBlock(url_for(page.path),'leancloud_visitors',page.title)
|
||||
span.leancloud-visitors-count
|
||||
else if commentUse[0] === 'Waline' && theme.waline.pageview
|
||||
+pvBlock('','','')
|
||||
span.waline-pageview-count(data-path=url_for(page.path))
|
||||
else if commentUse[0] === 'Twikoo' && theme.twikoo.visitor
|
||||
+pvBlock('','','')
|
||||
span#twikoo_visitors
|
||||
else if theme.busuanzi.page_pv
|
||||
+pvBlock('','post-meta-pv-cv','')
|
||||
span#busuanzi_value_page_pv
|
||||
else if theme.busuanzi.page_pv
|
||||
+pvBlock('','post-meta-pv-cv','')
|
||||
span#busuanzi_value_page_pv
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "hexo-theme-butterfly",
|
||||
"version": "4.3.0-b1",
|
||||
"version": "4.3.0-b2",
|
||||
"description": "A Simple and Card UI Design theme for Hexo",
|
||||
"main": "package.json",
|
||||
"scripts": {
|
||||
|
||||
@ -12,18 +12,22 @@ const path = require('path')
|
||||
hexo.extend.filter.register('before_generate', () => {
|
||||
const themeConfig = hexo.theme.config
|
||||
const { CDN, comments } = themeConfig
|
||||
const jsdelivr = 'https://cdn.jsdelivr.net/npm/'
|
||||
const unpkg = 'https://unpkg.com/'
|
||||
|
||||
/**
|
||||
* Merge CDN
|
||||
*/
|
||||
|
||||
const internalSrcCDN = {
|
||||
main_css: '/css/index.css',
|
||||
main: `https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@${version}/source/js/main.min.js`,
|
||||
utils: `https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@${version}/source/js/utils.min.js`,
|
||||
translate: `https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@${version}/source/js/tw_cn.min.js`,
|
||||
local_search: `https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@${version}/source/js/search/local-search.min.js`,
|
||||
algolia_js: `https://cdn.jsdelivr.net/npm/hexo-theme-butterfly@${version}/source/js/search/algolia.min.js`,
|
||||
const internalSrcCDN = (pre) => {
|
||||
return {
|
||||
main_css: '/css/index.css',
|
||||
main: `${pre}hexo-theme-butterfly@${version}/source/js/main.js`,
|
||||
utils: `${pre}hexo-theme-butterfly@${version}/source/js/utils.js`,
|
||||
translate: `${pre}hexo-theme-butterfly@${version}/source/js/tw_cn.js`,
|
||||
local_search: `${pre}hexo-theme-butterfly@${version}/source/js/search/local-search.js`,
|
||||
algolia_js: `${pre}hexo-theme-butterfly@${version}/source/js/search/algolia.js`,
|
||||
}
|
||||
}
|
||||
|
||||
const internalSrcLocal = {
|
||||
@ -35,51 +39,53 @@ hexo.extend.filter.register('before_generate', () => {
|
||||
algolia_js: '/js/search/algolia.js',
|
||||
}
|
||||
|
||||
const thirdPartySrcCDN = {
|
||||
algolia_search_v4: 'https://cdn.jsdelivr.net/npm/algoliasearch@4/dist/algoliasearch-lite.umd.js',
|
||||
instantsearch_v4: 'https://cdn.jsdelivr.net/npm/instantsearch.js@4/dist/instantsearch.production.min.js',
|
||||
pjax: 'https://cdn.jsdelivr.net/npm/pjax/pjax.min.js',
|
||||
gitalk: 'https://cdn.jsdelivr.net/npm/gitalk@latest/dist/gitalk.min.js',
|
||||
gitalk_css: 'https://cdn.jsdelivr.net/npm/gitalk/dist/gitalk.min.css',
|
||||
blueimp_md5: 'https://cdn.jsdelivr.net/npm/blueimp-md5/js/md5.min.js',
|
||||
valine: 'https://cdn.jsdelivr.net/npm/valine/dist/Valine.min.js',
|
||||
disqusjs: 'https://cdn.jsdelivr.net/npm/disqusjs@3/dist/browser/disqusjs.es2015.umd.min.js',
|
||||
disqusjs_css: 'https://cdn.jsdelivr.net/npm/disqusjs@3/dist/browser/styles/disqusjs.css',
|
||||
twikoo: 'https://cdn.jsdelivr.net/npm/twikoo@1/dist/twikoo.all.min.js',
|
||||
waline_js: 'https://cdn.jsdelivr.net/npm/@waline/client/dist/waline.js',
|
||||
waline_css: 'https://cdn.jsdelivr.net/npm/@waline/client/dist/waline.css',
|
||||
sharejs: 'https://cdn.jsdelivr.net/gh/overtrue/share.js@master/dist/js/social-share.min.js',
|
||||
sharejs_css: 'https://cdn.jsdelivr.net/npm/social-share.js/dist/css/share.min.css',
|
||||
mathjax: 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js',
|
||||
katex: 'https://cdn.jsdelivr.net/npm/katex@latest/dist/katex.min.css',
|
||||
katex_copytex: 'https://cdn.jsdelivr.net/npm/katex@latest/dist/contrib/copy-tex.min.js',
|
||||
katex_copytex_css: 'https://cdn.jsdelivr.net/npm/katex@latest/dist/contrib/copy-tex.css',
|
||||
mermaid: 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js',
|
||||
canvas_ribbon: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/canvas-ribbon.min.js',
|
||||
canvas_fluttering_ribbon: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/canvas-fluttering-ribbon.min.js',
|
||||
canvas_nest: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/canvas-nest.min.js',
|
||||
activate_power_mode: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/activate-power-mode.min.js',
|
||||
fireworks: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/fireworks.min.js',
|
||||
click_heart: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/click-heart.min.js',
|
||||
ClickShowText: 'https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/click-show-text.min.js',
|
||||
lazyload: 'https://cdn.jsdelivr.net/npm/vanilla-lazyload/dist/lazyload.iife.min.js',
|
||||
instantpage: 'https://cdn.jsdelivr.net/npm/instant.page@5/instantpage.min.js',
|
||||
typed: 'https://cdn.jsdelivr.net/npm/typed.js/lib/typed.min.js',
|
||||
pangu: 'https://cdn.jsdelivr.net/npm/pangu@4/dist/browser/pangu.min.js',
|
||||
fancybox_css_v4: 'https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.css',
|
||||
fancybox_v4: 'https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.js',
|
||||
medium_zoom: 'https://cdn.jsdelivr.net/npm/medium-zoom/dist/medium-zoom.min.js',
|
||||
snackbar_css: 'https://cdn.jsdelivr.net/npm/node-snackbar/dist/snackbar.min.css',
|
||||
snackbar: 'https://cdn.jsdelivr.net/npm/node-snackbar/dist/snackbar.min.js',
|
||||
fontawesomeV6: 'https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/css/all.min.css',
|
||||
flickr_justified_gallery_js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery@2/dist/fjGallery.min.js',
|
||||
flickr_justified_gallery_css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery@2/dist/fjGallery.min.css',
|
||||
aplayer_css: 'https://cdn.jsdelivr.net/npm/aplayer@1/dist/APlayer.min.css',
|
||||
aplayer_js: 'https://cdn.jsdelivr.net/npm/aplayer@1/dist/APlayer.min.js',
|
||||
meting_js: 'https://cdn.jsdelivr.net/gh/metowolf/MetingJS@1.2/dist/Meting.min.js',
|
||||
prismjs_js: 'https://cdn.jsdelivr.net/npm/prismjs@1/prism.min.js',
|
||||
prismjs_lineNumber_js: 'https://cdn.jsdelivr.net/npm/prismjs@1/plugins/line-numbers/prism-line-numbers.min.js',
|
||||
prismjs_autoloader: 'https://cdn.jsdelivr.net/npm/prismjs@1/plugins/autoloader/prism-autoloader.min.js',
|
||||
const thirdPartySrcCDN = (pre) => {
|
||||
return {
|
||||
algolia_search_v4: `${pre}algoliasearch@4/dist/algoliasearch-lite.umd.js`,
|
||||
instantsearch_v4: `${pre}instantsearch.js@4/dist/instantsearch.production.min.js`,
|
||||
pjax: `${pre}pjax/pjax.min.js`,
|
||||
gitalk: `${pre}gitalk@latest/dist/gitalk.min.js`,
|
||||
gitalk_css: `${pre}gitalk/dist/gitalk.css`,
|
||||
blueimp_md5: `${pre}blueimp-md5/js/md5.min.js`,
|
||||
valine: `${pre}valine/dist/Valine.min.js`,
|
||||
disqusjs: `${pre}disqusjs@3/dist/browser/disqusjs.es2015.umd.min.js`,
|
||||
disqusjs_css: `${pre}disqusjs@3/dist/browser/styles/disqusjs.css`,
|
||||
twikoo: `${pre}twikoo@1/dist/twikoo.all.min.js`,
|
||||
waline_js: `${pre}@waline/client/dist/waline.js`,
|
||||
waline_css: `${pre}@waline/client/dist/waline.css`,
|
||||
sharejs: `${pre}butterfly-extsrc@1/ShareJS/dist/js/social-share.min.js`,
|
||||
sharejs_css: `${pre}butterfly-extsrc@1/ShareJS/dist/css/share.min.css`,
|
||||
mathjax: `${pre}mathjax@3/es5/tex-mml-chtml.js`,
|
||||
katex: `${pre}katex@latest/dist/katex.min.css`,
|
||||
katex_copytex: `${pre}katex@latest/dist/contrib/copy-tex.min.js`,
|
||||
katex_copytex_css: `${pre}katex@latest/dist/contrib/copy-tex.css`,
|
||||
mermaid: `${pre}mermaid/dist/mermaid.min.js`,
|
||||
canvas_ribbon: `${pre}butterfly-extsrc@1/dist/canvas-ribbon.min.js`,
|
||||
canvas_fluttering_ribbon: `${pre}butterfly-extsrc@1/dist/canvas-fluttering-ribbon.min.js`,
|
||||
canvas_nest: `${pre}butterfly-extsrc@1/dist/canvas-nest.min.js`,
|
||||
activate_power_mode: `${pre}butterfly-extsrc@1/dist/activate-power-mode.min.js`,
|
||||
fireworks: `${pre}butterfly-extsrc@1/dist/fireworks.min.js`,
|
||||
click_heart: `${pre}butterfly-extsrc@1/dist/click-heart.min.js`,
|
||||
ClickShowText: `${pre}butterfly-extsrc@1/dist/click-show-text.min.js`,
|
||||
lazyload: `${pre}vanilla-lazyload/dist/lazyload.iife.min.js`,
|
||||
instantpage: `${pre}instant.page@5/instantpage.js`,
|
||||
typed: `${pre}typed.js/lib/typed.min.js`,
|
||||
pangu: `${pre}pangu@4/dist/browser/pangu.min.js`,
|
||||
fancybox_css_v4: `${pre}@fancyapps/ui/dist/fancybox.css`,
|
||||
fancybox_v4: `${pre}@fancyapps/ui/dist/fancybox.umd.js`,
|
||||
medium_zoom: `${pre}medium-zoom/dist/medium-zoom.min.js`,
|
||||
snackbar_css: `${pre}node-snackbar/dist/snackbar.min.css`,
|
||||
snackbar: `${pre}node-snackbar/dist/snackbar.min.js`,
|
||||
fontawesomeV6: `${pre}@fortawesome/fontawesome-free@6/css/all.min.css`,
|
||||
flickr_justified_gallery_js: `${pre}flickr-justified-gallery@2/dist/fjGallery.min.js`,
|
||||
flickr_justified_gallery_css: `${pre}flickr-justified-gallery@2/dist/fjGallery.css`,
|
||||
aplayer_css: `${pre}aplayer@1/dist/APlayer.min.css`,
|
||||
aplayer_js: `${pre}aplayer@1/dist/APlayer.min.js`,
|
||||
meting_js: `${pre}butterfly-extsrc@1/MetingJS/dist/Meting.min.js`,
|
||||
prismjs_js: `${pre}prismjs@1/prism.js`,
|
||||
prismjs_lineNumber_js: `${pre}prismjs@1/plugins/line-numbers/prism-line-numbers.min.js`,
|
||||
prismjs_autoloader: `${pre}prismjs@1/plugins/autoloader/prism-autoloader.min.js`,
|
||||
}
|
||||
}
|
||||
|
||||
// delete null value
|
||||
@ -94,7 +100,8 @@ hexo.extend.filter.register('before_generate', () => {
|
||||
const defaultVal = (obj, choose) => {
|
||||
if (obj === 'internal') {
|
||||
if (choose === 'local') return internalSrcLocal
|
||||
else return internalSrcCDN
|
||||
else if (choose === 'unpkg') return internalSrcCDN(unpkg)
|
||||
else return internalSrcCDN(jsdelivr)
|
||||
}
|
||||
|
||||
if (obj === 'external') {
|
||||
@ -108,7 +115,8 @@ hexo.extend.filter.register('before_generate', () => {
|
||||
})
|
||||
} catch (e) {}
|
||||
return result
|
||||
} else return thirdPartySrcCDN
|
||||
} else if (choose === 'unpkg') return thirdPartySrcCDN(unpkg)
|
||||
else return thirdPartySrcCDN(jsdelivr)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user