WP_Site_Icon::get_post_metadata( null|array|string $value, int $post_id, string $meta_key, bool $single )

Adds custom image sizes when meta data for an image is requested, that happens to be used as Site Icon.

Parameters

$value

(null|array|string) (Required) The value get_metadata() should return a single metadata value, or an array of values.

$post_id

(int) (Required) Post ID.

$meta_key

(string) (Required) Meta key.

$single

(bool) (Required) Whether to return only the first value of the specified $meta_key.

Return

(array|null|string) The attachment metadata value, array of values, or null.

Source

File: wp-admin/includes/class-wp-site-icon.php

public function get_post_metadata( $value, $post_id, $meta_key, $single ) {
		if ( $single && '_wp_attachment_backup_sizes' === $meta_key ) {
			$site_icon_id = get_option( 'site_icon' );

			if ( $post_id == $site_icon_id ) {
				add_filter( 'intermediate_image_sizes', array( $this, 'intermediate_image_sizes' ) );
			}
		}

		return $value;
	}

Changelog

Version Description
4.3.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_site_icon/get_post_metadata