mirror of
https://github.com/jerryc127/hexo-theme-butterfly.git
synced 2026-08-08 19:48:42 +08:00
chore: v5.7.0
- Remove APlayer/Meting music player support - Upgrade Artalk to 2.10.0 and add vote feature - Cache plugins.yml to avoid re-rendering on every generate - Add null safety for error_404 and highlight config - Fix series date timestamp format - Enhance shuoshuo mockPost compatibility and error handling - Prevent scrollbar flicker when fancybox is open - Update plugin versions (docsearch, katex, twikoo) - Bump version to 5.7.0
This commit is contained in:
@@ -6,7 +6,8 @@
|
||||
'use strict'
|
||||
|
||||
hexo.extend.generator.register('404', function (locals) {
|
||||
if (!hexo.theme.config.error_404.enable) return
|
||||
const error404 = hexo.theme.config.error_404 || {}
|
||||
if (!error404.enable) return
|
||||
return {
|
||||
path: '404.html',
|
||||
layout: ['page'],
|
||||
|
||||
@@ -8,11 +8,19 @@
|
||||
const { version } = require('../../package.json')
|
||||
const path = require('path')
|
||||
|
||||
// Cache plugins.yml to avoid re-rendering on every generate
|
||||
let cachedPlugins = null
|
||||
const loadPlugins = hexo => {
|
||||
if (cachedPlugins) return cachedPlugins
|
||||
cachedPlugins = hexo.render.renderSync({ path: path.join(hexo.theme_dir, '/plugins.yml'), engine: 'yaml' })
|
||||
return cachedPlugins
|
||||
}
|
||||
|
||||
hexo.extend.filter.register('before_generate', () => {
|
||||
const themeConfig = hexo.theme.config
|
||||
const { CDN } = themeConfig
|
||||
|
||||
const thirdPartySrc = hexo.render.renderSync({ path: path.join(hexo.theme_dir, '/plugins.yml'), engine: 'yaml' })
|
||||
const thirdPartySrc = loadPlugins(hexo)
|
||||
const internalSrc = {
|
||||
main: {
|
||||
name: 'hexo-theme-butterfly',
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
'use strict'
|
||||
|
||||
hexo.extend.filter.register('stylus:renderer', style => {
|
||||
const { syntax_highlighter: syntaxHighlighter, highlight, prismjs } = hexo.config
|
||||
const { syntax_highlighter: syntaxHighlighter, highlight = {}, prismjs = {} } = hexo.config
|
||||
let { enable: highlightEnable, line_number: highlightLineNumber } = highlight
|
||||
let { enable: prismjsEnable, line_number: prismjsLineNumber } = prismjs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user