效果图

参考大佬教程

在目录\themes\butterfly\scripts下新建random.js文件

加以下代码:

1
2
3
4
5
6
7
8
9
10
11
hexo.extend.generator.register('random', function (locals) {
const config = hexo.config.random || {}
const posts = []
for (const post of locals.posts.data) {
if (post.random !== false) posts.push(post.path)
}
return {
path: config.path || 'random/index.html',
data: `<html><head><script>var posts=${JSON.stringify(posts)};window.open('/'+posts[Math.floor(Math.random() * posts.length)],"_self")</script></head></html>`
}
})

在menu菜单位置添加配置

1
随机文章: /random/ || fa fa-random

看效果

1
hexo cl && hexo g && hexo s