背景
Discuz X5.0 开启远程附件后缩略图相关问题此前已配置 Cloudflare R2 For Discuz X5.0/X3.5(非插件方案)新问题
帖子内图片直接显示原图,流量消耗大、页面加载速度慢,需对图片进行压缩优化。解决思路
利用七牛对象存储图片样式实现图片裁剪与压缩,仅需在图片链接后拼接对应样式参数即可生效。操作步骤
- 先关闭 Discuz 自带的生成缩略图功能
- 修改 Discuz X5.0 对应文件:
- /wwwroot/www. 你的域名.com/template/default/forum/discuzcode.php
- /wwwroot/www. 你的域名.com/template/default/touch/forum/discuzcode.php
代码修改规则
按需求添加对应后缀:src调用:-sujian.webp(页面展示用高压缩版本)zoomfile调用:-snt.webp(点击放大查看用高质量版本)file调用:-sujian.webp(修改为 sujian 可正常使用)onclick需正确使用this.getAttribute('zoomfile'),保证放大时加载-snt.webp
说明:sujian.webp、snt.webp 为七牛自定义的两种图片处理样式名称。
可选安全配置
进入七牛:多媒体样式 → 访问设置 → 开启原始资源保护开启后所有图片必须携带样式才可访问,示例:https://你的远程地址/xxx.jpg-snt.webp