Typecho 原生不支持解析 Webp 图片,Typecho 1.2.0 依然默认不支持.webp格式图片。在附件插入 webp 文件会被当做文件解析,因此需要魔改 typecho。
废话不多说,上教程。
Typecho 1.2.0之前
1、在 var/Widget/Abstract/Contents.php 中的 686 行左右:
将这行代码
$value['attachment']->isImage = in_array($content['type'], array('jpg', 'jpeg', 'gif', 'png', 'tiff', 'bmp'));
替换为
$value['attachment']->isImage = in_array($content['type'], array('jpg', 'jpeg', 'gif', 'png', 'tiff', 'bmp', 'webp'));
2、再到 var/Typecho/Common.php 的第 1193 行左右
添加如下代码
'webp' => 'image/webp',
3、最后到 Typecho 后台 -> 设置 -> 基本 -> 允许上传的文件类型 -> 其他格式 -> 添加 webp 即可完成解析。
Typecho 1.2.0版本
1、找到 Typecho 网站所在文件夹内的以下文件:
var/Widget/Themes/Rows.php
定位到大约第48行的位置,将以下代码:
return preg_match("/screenshot.(jpg|png|gif|bmp|jpeg)/i",path);
修改为:
return preg_match("/screenshot.(jpg|png|gif|bmp|jpeg|webp)/i",path);
2、保存修改后,找到 Typecho 网站所在文件夹下的以下文件:
var/Widget/Base/Contents.php
定位到大概第557行,将以下代码:
$value['attachment']->isImage = in_array($content['type'], ['jpg', 'jpeg', 'gif', 'png', 'tiff', 'bmp']);
修改为:
$value['attachment']->isImage = in_array($content['type'], ['jpg', 'jpeg', 'gif', 'png', 'tiff', 'bmp', 'webp']);
3、保存修改后,再找到 Typecho 网站所在文件夹下的以下文件:
var/Typecho/Common.php
找到图片格式所在的行,大约是在1259行后的位置添加下面这一行代码:
'webp' => 'image/webp',
4、保存修改后,最后进入 Typecho 网站后台,前往 设置 > 基本,在允许上传的文件类型部分,勾选其他格式,并添加webp,然后点击保存设置。
© 版权声明
分享是一种美德,转载请保留原链接
THE END
暂无评论内容