wpseek.com
A WordPress-centric search engine for devs and theme authors



wp_img_tag_add_loading_attr › WordPress Function

Since5.5.0
Deprecated6.3.0
wp_img_tag_add_loading_attr ( $image, $context )
Parameters: (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
See:
Returns:
  • (string) Converted `img` tag with `loading` attribute added.
Defined at:
Codex:

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



Source

function wp_img_tag_add_loading_attr( $image, $context ) {
	_deprecated_function( __FUNCTION__, '6.3.0', 'wp_img_tag_add_loading_optimization_attrs()' );
	/*
	 * Get loading attribute value to use. This must occur before the conditional check below so that even images that
	 * are ineligible for being lazy-loaded are considered.
	 */
	$value = wp_get_loading_attr_default( $context );

	// Images should have source and dimension attributes for the `loading` attribute to be added.
	if ( ! str_contains( $image, ' src="' ) || ! str_contains( $image, ' width="' ) || ! str_contains( $image, ' height="' ) ) {
		return $image;
	}

	/** This filter is documented in wp-admin/includes/media.php */
	$value = apply_filters( 'wp_img_tag_add_loading_attr', $value, $image, $context );

	if ( $value ) {
		if ( ! in_array( $value, array( 'lazy', 'eager' ), true ) ) {
			$value = 'lazy';
		}

		return str_replace( '<img', '<img loading="' . esc_attr( $value ) . '"', $image );
	}

	return $image;
}