当前位置:首页>WordPress建站>WordPress开发>WordPress 6.0 新增过滤器允许修改文章内容中的图片输出

WordPress 6.0 新增过滤器允许修改文章内容中的图片输出

WordPress 6.0 引入了一个新的过滤器  wp_content_img_tag,允许调整HTML内容中的图像,最突出的是通过the_content过滤器发布内容。

WordPress 5.5 最初引入了wp_filter_content_tags()功能来修改 HTML 内容中的某些元素(主要是图像)。在 WordPress 6.0 版本之前,如果不复制函数wp_filter_content_tags()中复杂的正则表达式逻辑,就不可能更改这些图像标签。这增加了复杂性和开销。新的wp_content_img_tag过滤器解决了这个问题。

如何使用过滤器

新的wp_content_img_tag过滤器传递以下参数:

  • string $filtered_image:完整的 img标签,其属性将替换源图像标签。
  • string $context:附加上下文,例如当前过滤器名称或调用 this 的函数名称。
  • int $attachment_id: 图片附件 ID。如果图像不是附件,则为 0。

过滤器必须返回一个字符串,然后将替换img传递给过滤器的标签。

示例

这是一个示例,其中使用新过滤器为内容中的每个图像标签添加边框颜色样式属性。

function myplugin_img_tag_add_border_color( $filtered_image, $context, $attachment_id ) {
    $style = 'border-color: #cccccc;';
 
    $filtered_image = str_replace( '<img ', '<img style="' . $style . '" ', $filtered_image );
 
    return $filtered_image;
}
add_filter( 'wp_content_img_tag', 'myplugin_img_tag_add_border_color', 10, 3 );

wp_filter_content_tags()功能最初是为了促进对图像的延迟加载支持而引入的,此后已成为修改内容中的图像以实现各种性能增强的标准方法。新的wp_content_img_tag过滤器通过允许插件开发人员添加他们自己的自定义项来扩展这些功能。

有关新过滤器的更多上下文,请参阅#55347

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
欢迎关注WordPress大学公众号 WPDAXUE
WordPress资讯

WordPress 6.0 中对 do_parse_request 过滤器的更改

2022-4-30 11:38:47

WordPress资讯

WordPress 6.0 中的缓存改进

2022-4-30 12:07:30

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索