Webp图片是新一代的图片格式,维基上显示最初发布于2010年,根据Google较早的测试,WebP的无损压缩相比于PNG格式减少了45%的体积,优势可谓非常明显了。
截止到2020年的浏览器支持状态如下所示,可以看出现在主流的浏览器都已经支持这种格式。
但是wordpress的媒体库管理中它还没有他的一席之地,每次上传的时候都要费一番心血。
在网络上找了很久,终于找到了一个代码级别的解决办法。
1、修改主题下的functions.php文件,添加如下代码,让wordpress媒体库支持webp文件上传。
function webp_filter_mime_types( $array ) { $array['webp'] = 'image/webp'; return $array; } add_filter( 'mime_types', 'webp_filter_mime_types', 10, 1 );
2、同样是修改主题下的functions.php文件,添加如下的代码,让wordpress媒体库支持webp文件预览。
function webp_file_is_displayable_image($result, $path) { $info = @getimagesize( $path ); if($info['mime'] == 'image/webp') { $result = true; } return $result; } add_filter( 'file_is_displayable_image', 'webp_file_is_displayable_image', 10, 2 );
做了这两步,wordpress媒体库就可以支持webp文件的上传和预览了。
PS:网上还看到有修改wordpress系统文件的方法,不建议这么做,wordpress更新之后这些文件就会被覆盖掉,wordpress既然留出了扩展性,我们就不应该去破坏它的封装。
欢迎转载,请注明出处:闪电树熊 » 如何让WordPress媒体库支持webp格式图片上传和预览