yilia 的html模板,自己动手修改完善yilia主题(下)

本文介绍了如何优化Hexo博客的Yilia主题,包括修改Webpack打包路径,删除无效JS代码,优化中英文混排,以及更优雅地引入Valine评论系统。通过这些改动,可以提升博客的加载速度和用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这一期咱们接着来说自定义Yilia主题的事。

本文涉及到的修改稍微有一点点复杂,可以参考我的 GitHub仓库 。

修改webpack打包路径

为了方便管理代码,也是为了看起来干净一点,我简单修改了一下主题文档结构,把资源文件放在了 assets 目录下

修改 webpack.config.js 的 output 模块

output: {

path: __dirname+"/source/assets/",

publicPath: "./",

filename: "[name].[chunkhash:6].js"

}

删除文章中那一堆无用的代码

使用yilia主题,每篇文章中都会出现一坨js代码,至今为止我也不知道是什么作用,删掉貌似也没有什么影响,每个页面能精简七八十K吧。

删掉 source-src\scrept.ejs 中的

= 0) { %>

Js后加载

新建模板 layout\_partial\load-scrept.ejs

上面的代码是已经压缩的,直接放进页面就可以

降新建的模板放入head部分,在 layout\_partial\head.ejs 后面加入

有了这段代码,我们就可以使用 loadScript 加载各种Js文件了。

首先是主题本身的Js文件,也就是 slider.js ,先分离 scrept.ejs ,创建一个 main.ejs

main.ejs

' %>

script.ejs

' %>

(function() {

= 0) { %>loadScript("config.rootassets/")

})();

webpack.config.js ,修改 plugins ,增加main部分

new HtmlWebpackPlugin({

inject: false,

cache: false,

minify: minifyHTML,

template: './source-src/script.ejs',

filename: '../../layout/_partial/script.ejs'

}),

new HtmlWebpackPlugin({

inject: false,

cache: false,

minify: minifyHTML,

template: './source-src/main.ejs',

filename: '../../layout/_partial/main.ejs'

})

在 layout\_partial\head.ejs 中再加入

为了优化其他js文件的加载速度,将不必要的js放在页面尾部,也就是 after-footer.ejs ,具体修改可以参考我的GitHub仓库

优化中英文混排

优化中英文混排,可以引入 pangu.js ,创建模板 layout\_partial\pangu.ejs

loadScript('https://cdn.jsdelivr.net/npm/pangu/dist/browser/pangu.min.js',function(){pangu.spacingPage();});

在 after-footer.ejs 中引入

在主题的配置文件 _config.yml 中添加

#pangu.js,中英文混排优化

pangu: true

更优雅的方式引入valine

上一篇文章写了引入valine,但是这样做并不是最佳方式,修改模板 layout\_partial\post\valine.ejs (需要用到上面提到的js后加载方式)

var notify = == true ? true : false;

var verify = == true ? true : false;

var visitor = == true ? true : false;

loadScript('https://cdn.jsdelivr.net/npm/valine/dist/Valine.min.js',function(){

loadScript('https://cdn.jsdelivr.net/npm/leancloud-storage/dist/av-min.js',function(){

new Valine({

av: AV,

el: '#vcomment',

notify: notify,

verify: verify,

app_id: '',

app_key: '',

placeholder: '',

avatar: '',

avatar_cdn: '',

pageSize: ,

path: '',

visitor: visitor

});

});

});

上篇文章里的主题样式,我放到了 comment.scss 中(这里为了方便管理,并没有把移动端代码放到 mobile.scss 中)

#vcomment{margin:30px;padding:10px;background:#fff}

@media screen and (max-width:800px){#vcomment{margin:auto;padding:10px;background:#fff}}

更多骚操作

更多骚操作请看我 GitHub仓库 中的修改。

请作者吃辣条

adcc38fe85b6c2eee17a0874d7325ecd.png 微信

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值