这个Image Widget 包括width
和height
在我尝试过滤掉的图像上,我没有成功,所以我可以得到流体宽度。
我尝试了以下方法,这似乎是解决类似问题最常见的方法functions.php
, 但没有成功:
function responsive_image_widget( $attr = array() ) {
unset($attr[\'width\']);
unset($attr[\'height\']);
return $attr;
}
add_filter( \'image_widget_image_attributes\', \'responsive_image_widget\' );
以及
function responsive_image_widget($html) {
$html = preg_replace(\'/(width|height)=["\\\']\\d*["\\\']\\s?/\', "", $html);
return $html;
}
add_filter(\'image_widget_image_attributes\',\'responsive_image_widget\', 10);
下面是图像小部件的链接
filter documentation.
非常感谢您的帮助!
SO网友:Nilambar Sharma
无法将其从属性过滤器中删除。渲染图像时,插件的操作如下。
$output .= rtrim("<img $hwstring");
foreach ( $attr as $name => $value ) {
$output .= sprintf( \' %s="%s"\', $name, $value );
}
$output .= \' />\';
它预先附加宽度和高度字符串,并且只应用属性。可悲的是,属性过滤器中并没有保留宽度和高度。
**我不确定这是否应该作为答案发布。我在这里发帖是因为我不能对你的问题发表评论**
SO网友:leromt
您是否尝试过直接针对宽度和高度过滤器?
(来自插件代码)
$instance[\'width\'] = apply_filters( \'image_widget_image_width\', abs( $instance[\'width\'] ), $args, $instance );
$instance[\'height\'] = apply_filters( \'image_widget_image_height\', abs( $instance[\'height\'] ), $args, $instance );
以您的代码为例:
function responsive_image_widget( $currentWidth ) {
$currentWidth = \'\';
return $currentWidth;
}
add_filter(\'image_widget_image_width\', \'responsive_image_widget\' );