wordpress图片不显示禁止响应式图片srcset和sizes方法

由于我wp主题库图片超多,为了节约成本,因此用了远程附件来保证主站的访问速度,开启了插件后经常出现莫名其妙的问题,今天有朋友发觉本站有部分图片不显示。经过查看源代码,发觉这部分不显示的图片里面都是因为有srcset和sizes属性,这两个属性里面用的依然是www.tuxingzhan.com这个域名,而不是img.tuxingzhan.com这个域名,导致图片无法显示出来。这个可能涉及到需要修改主题或者是远程插件,修改这些今后更新了可能又忘记改过了,因此直接禁用这两个属性得了,简单粗暴的解决了这个问题。

WordPress 4.4版本以后开始新增了响应式图片属性 srcset和sizes,主要是方便响应式主题的设计,不同的分辨率比如手机和电脑显示不同的图片,这个新增属性很多插件和主题没有很好的兼容,导致了图片不显示问题。这种情况一般只有开启了远程附件或者缓存的时候才会出现。

假如你发觉图片不显示,但是点开可以可以看,源代码里面有srcset属性,一般都是这个原因。解决方法一是修改主题或者插件使得地址正确,另外一个就是禁用这个属性。

禁用方法:在当前使用wordpress主题functions.php文件末尾后面增加以下代码即可。

//disable srcset on images
function disable_srcset( $sources ) {
return false;
}
add_filter( 'wp_calculate_image_srcset', 'disable_srcset' );