WordPress去除img标签的高度与宽度让图片自适应屏幕
WordPress去除img标签的高度与宽度让图片自适应屏幕详细介绍
在移动设备端,因为屏幕都比较小,如果要让图片自适应屏幕,我们应当把width和height属性去除,不然图片可能会比屏幕大,有此需求的朋友可以参考下本文
要求
如,在桌面设备上,图片使用的是以下的代码:
代码如下:
<img src="abc.png" alt="abc" width="580" height="267" />
在移动设备端,因为屏幕都比较小,如果要让图片自适应屏幕,我们应当把width和height属性去除,不然图片可能会比屏幕大:
代码如下:
<img src="abc.png" alt="abc" />
方法一,
将下面代码复制到当前主题的 functions. 文件中:
代码如下:
add_filter( 'post_t oApBkSoDdhumbnail_html', 'remove_width_attribute', 10 );
add_filter( 'image_send_to_editor', 'remove_width_attribute', 10 );
function remove_width_attribute( $html ) {
$html = preg_replace( '/(width|height)="\d*"\s/', "", $html );
return $html;
}
方法二
代码如下:
// 自适应图片删除width和height,by Ludou
function ludou_remove_width_height_attribute($content){
preg_match_all("/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png\.bmp]))[\'|\"].*?[\/]?>/", $content, $images);
if(!empty($images)) {
foreach($images[0] as $index => $value){
$new_img = preg_replace('/(width|height)="\d*"\s/', "", $images[0][$index]);
$content = str_replac
e($images[0][$index], $new
_img, $content);
}
}
return $content;
}
// 判断是否是移动设备浏览
if(_is_mobile()) {
// 删除文章内容中img的width和height属性
add_filter('the_content', 'ludou_remove_width_height_attribute', 99);
}
这样我再试一下是不是达到想要的结果了。 本文标题: WordPress去除img标签的高度与宽度让图片自适应屏幕 ,