當(dāng)前位置:首頁>WordPress建站>WordPress開發(fā)>WordPress 6.0 新增過濾器允許修改文章內(nèi)容中的圖片輸出

WordPress 6.0 新增過濾器允許修改文章內(nèi)容中的圖片輸出

WordPress 6.0 引入了一個新的過濾器  wp_content_img_tag,允許調(diào)整HTML內(nèi)容中的圖像,最突出的是通過the_content過濾器發(fā)布內(nèi)容。

WordPress 5.5 最初引入了wp_filter_content_tags()功能來修改 HTML 內(nèi)容中的某些元素(主要是圖像)。在 WordPress 6.0 版本之前,如果不復(fù)制函數(shù)wp_filter_content_tags()中復(fù)雜的正則表達式邏輯,就不可能更改這些圖像標(biāo)簽。這增加了復(fù)雜性和開銷。新的wp_content_img_tag過濾器解決了這個問題。

如何使用過濾器

新的wp_content_img_tag過濾器傳遞以下參數(shù):

  • string?$filtered_image:完整的 img標(biāo)簽,其屬性將替換源圖像標(biāo)簽。
  • string?$context:附加上下文,例如當(dāng)前過濾器名稱或調(diào)用 this 的函數(shù)名稱。
  • int?$attachment_id: 圖片附件 ID。如果圖像不是附件,則為 0。

過濾器必須返回一個字符串,然后將替換img傳遞給過濾器的標(biāo)簽。

示例

這是一個示例,其中使用新過濾器為內(nèi)容中的每個圖像標(biāo)簽添加邊框顏色樣式屬性。

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()功能最初是為了促進對圖像的延遲加載支持而引入的,此后已成為修改內(nèi)容中的圖像以實現(xiàn)各種性能增強的標(biāo)準(zhǔn)方法。新的wp_content_img_tag過濾器通過允許插件開發(fā)人員添加他們自己的自定義項來擴展這些功能。

有關(guān)新過濾器的更多上下文,請參閱#55347

聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號 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 條回復(fù) A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

南安市| 湖北省| 晴隆县| 蓬安县| 丰台区| 潞西市| 洪江市| 武鸣县| 维西| 井研县| 醴陵市| 彰武县| 西和县| 通许县| 土默特左旗| 宁阳县| 安仁县| 新疆| 龙岩市| 江西省| 平湖市| 兴化市| 改则县| 五寨县| 崇义县| 博野县| 旬邑县| 和林格尔县| 连城县| 潞西市| 绥芬河市| 德州市| 包头市| 芦山县| 洛隆县| 阳朔县| 曲阜市| 井研县| 栖霞市| 马边| 垫江县|