这个问题是关于从图像中删除尺寸属性的讨论的分支。该线程上提供的解决方案代码工作得很好,除了它有一个不幸的副作用,即任何[caption]
短代码都从图像中剥离。
经过几个小时的核心代码挖掘,我找到了造成这种情况的原因。wpeditimage TinyMCE插件,负责添加[caption]
简码,以检查简码和img
标记中的宽度属性。如果找不到它们,则只需删除标题。由于这是使用TinyMCE编辑器中的javascript“即时”完成的,所以我想不出任何类型的WordPress过滤器都可以解决此问题。但是,我很高兴被证明是错误的。:)
最后一点,我的临时解决方案是使用以下jQuery剥离客户端所有有害标签。结合使用过滤器img_caption_shortcode
以防止在此处使用宽度样式,似乎可以完成这项工作。这不漂亮,但现在是创可贴。有人有更好的主意吗?
// Strip width and height attributes from img, video, and object in the main article so we can have fluid images
var $fluid_items = $('.main-article-wrapper').find('img,video,object');
$fluid_items.removeAttr('width');
$fluid_items.removeAttr('height');
嗯...能够使用可视编辑器吗?如果仅使用HTML编辑器,则img_caption_shortcode上的过滤器可以正常工作……
—
goldenapples
@goldenapples,是的,我不想失去视觉编辑器,因为我将让非技术人员来编辑该站点。(还是)感谢你的建议。还有其他想法吗?
—
Dominic P
@Wendy,嗯,我无法在评论中粘贴整个内容。如果您想问另一个问题并给我链接,我将其发布为答案。
—
Dominic P