wp_site_icon

Выводит на экран мета тег иконки сайта: <link rel="icon" href="%s" sizes="32x32" />

Выводит 4 метатега для разных устройств:

wp_site_icon();

Примеры

#1 Демонстрация работы

Допустим мы установили иконку для сайта во: Внешний вид > Настроить > Свойства сайта, тогда следующий код сработает так:

wp_site_icon();

/* выведет:
<link rel="icon" href="http://wptest.ru/wp-content/uploads/2015/07/cropped-gorchitca___-32x32.jpg" sizes="32x32" />
<link rel="icon" href="http://wptest.ru/wp-content/uploads/2015/07/cropped-gorchitca___-192x192.jpg" sizes="192x192" />
<link rel="apple-touch-icon-precomposed" href="http://wptest.ru/wp-content/uploads/2015/07/cropped-gorchitca___-180x180.jpg">
<meta name="msapplication-TileImage" content="http://wptest.ru/wp-content/uploads/2015/07/cropped-gorchitca___-270x270.jpg">
*/

#2 Отключим вывод иконки сайта, если она установлена

Для этого впишем этот код в файл темы functions.php:

remove_action('wp_head', 'wp_site_icon', 99 );

Код из


wp-includes/general-template.php

WP 4.7.2

<?php
function wp_site_icon() {
	if ( ! has_site_icon() && ! is_customize_preview() ) {
		return;
	}

	$meta_tags = array();
	$icon_32 = get_site_icon_url( 32 );
	if ( empty( $icon_32 ) && is_customize_preview() ) {
		$icon_32 = '/favicon.ico'; // Serve default favicon URL in customizer so element can be updated for preview.
	}
	if ( $icon_32 ) {
		$meta_tags[] = sprintf( '<link rel="icon" href="%s" sizes="32x32" />', esc_url( $icon_32 ) );
	}
	$icon_192 = get_site_icon_url( 192 );
	if ( $icon_192 ) {
		$meta_tags[] = sprintf( '<link rel="icon" href="%s" sizes="192x192" />', esc_url( $icon_192 ) );
	}
	$icon_180 = get_site_icon_url( 180 );
	if ( $icon_180 ) {
		$meta_tags[] = sprintf( '<link rel="apple-touch-icon-precomposed" href="%s" />', esc_url( $icon_180 ) );
	}
	$icon_270 = get_site_icon_url( 270 );
	if ( $icon_270 ) {
		$meta_tags[] = sprintf( '<meta name="msapplication-TileImage" content="%s" />', esc_url( $icon_270 ) );
	}

	/**
	 * Filters the site icon meta tags, so Plugins can add their own.
	 *
	 * @since 4.3.0
	 *
	 * @param array $meta_tags Site Icon meta elements.
	 */
	$meta_tags = apply_filters( 'site_icon_meta_tags', $meta_tags );
	$meta_tags = array_filter( $meta_tags );

	foreach ( $meta_tags as $meta_tag ) {
		echo "$meta_tagn";
	}
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *