wpseek.com
WordPress开发者和主题制作者的搜索引擎



wp_img_tag_add_decoding_attr › WordPress Function

Since6.1.0
已弃用6.4.0
wp_img_tag_add_decoding_attr ( $image, $context )
参数: (2)
  • (string) $image The HTML `img` tag where the attribute should be added.
    Required: Yes
  • (string) $context Additional context to pass to the filters.
    Required: Yes
查看:
返回:
  • (string) Converted `img` tag with `decoding` attribute added.
定义在:
文档:

Adds `decoding` attribute to an `img` HTML tag.

The decoding attribute allows developers to indicate whether the browser can decode the image off the main thread (async), on the main thread (sync) or as determined by the browser (auto). By default WordPress adds decoding="async" to images but developers can use the {@see 'wp_img_tag_add_decoding_attr'} filter to modify this to remove the attribute or set it to another accepted value.


源码

function wp_img_tag_add_decoding_attr( $image, $context ) {
	_deprecated_function( __FUNCTION__, '6.4.0', 'wp_img_tag_add_loading_optimization_attrs()' );

	/*
	 * Only apply the decoding attribute to images that have a src attribute that
	 * starts with a double quote, ensuring escaped JSON is also excluded.
	 */
	if ( ! str_contains( $image, ' src="' ) ) {
		return $image;
	}

	/** This action is documented in wp-includes/media.php */
	$value = apply_filters( 'wp_img_tag_add_decoding_attr', 'async', $image, $context );

	if ( in_array( $value, array( 'async', 'sync', 'auto' ), true ) ) {
		$image = str_replace( '<img ', '<img decoding="' . esc_attr( $value ) . '" ', $image );
	}

	return $image;
}