wp-includes/general-template.php:1167Returns the Site Icon URL.
$sizeintoptional512$urlstringoptional''$blog_idintoptional0stringOne hook fires while get_site_icon_url() runs, in this order:
function get_site_icon_url( $size = 512, $url = '', $blog_id = 0 ) { $switched_blog = false; if ( is_multisite() && ! empty( $blog_id ) && get_current_blog_id() !== (int) $blog_id ) { switch_to_blog( $blog_id ); $switched_blog = true; } $site_icon_id = (int) get_option( 'site_icon' ); if ( $site_icon_id ) { if ( $size >= 512 ) { $size_data = 'full'; } else { $size_data = array( $size, $size ); } $attachment_url = wp_get_attachment_image_url( $site_icon_id, $size_data ); if ( $attachment_url ) { $url = is_ssl() ? set_url_scheme( $attachment_url, 'https' ) : $attachment_url; } } if ( $switched_blog ) { restore_current_blog(); } /** * Filters the site icon URL. * * @since 4.4.0 * * @param string $url Site icon URL. * @param int $size Size of the site icon. * @param int $blog_id ID of the blog to get the site icon for. */ return apply_filters( 'get_site_icon_url', $url, $size, $blog_id );}Introduced in 4.3.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
src/wp-includes/general-template.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.