the_custom_logo()WP 4.5.0

Выводит на экран HTML код логотипа сайта установленного в настройках темы. Код будет такой: <a href="/"><img></a>.

Логотип можно установить в кастомайзере или в настрйоках отображения:

Это обертка для конструкции: echo get_custom_logo( $blog_id );

Чтобы можно было установить логотип в кастомайзере, нужно включить поддержку custom-logo у темы: add_theme_support( 'custom-logo' ).

Работает на основе: get_custom_logo()

Хуков нет.

Возвращает

null. Выводит результат на экран. Если логотип в настройках темы не установлен, то ничего не выведет.

Использование

<?php the_custom_logo( $blog_id ); ?>
$blog_id(число)
ID сайта/блога, логотип которого нужно получить.
По умолчанию: 0 (текущий блог)

Примеры

25

#1 Получим логотип, но без ссылки на главную

$logo_img = '';
$custom_logo_id = get_theme_mod( 'custom_logo' );

if( $custom_logo_id ){
	$logo_img = wp_get_attachment_image( $custom_logo_id, 'full', false, array(
		'class'    => 'custom-logo',
		'itemprop' => 'logo',
	) );
}

echo $logo_img;
3

#2 Выведем на экран логотип сайта

<?php the_custom_logo( $blog_id ); ?>

/* Выведет такой HTML код (только в одну строку):

<a href="http://example.com/" class="custom-logo-link" rel="home" itemprop="url">
	<img 
	width="491" 
	height="299" 
	src="http://example.com/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper.jpg" 
	class="custom-logo" 
	alt="cropped-cropped-triforce-wallpaper.jpg" 
	itemprop="logo" 
	srcset="http://example.com/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper.jpg 491w, http://example.com/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper-300x183.jpg 300w" 
	sizes="(max-width: 491px) 100vw, 491px" 
	/>
</a>
*/
0

#3 Получим URL картинки кастомного логотипа:

$custom_logo_id = get_theme_mod( 'custom_logo' );
$image = wp_get_attachment_image_src( $custom_logo_id , 'full' );
echo $image[0];

Смотрите также:

0

#4 Добавим кастомный логотип на страницу входа:

add_action( 'login_head', 'wpdev_filter_login_head', 100 );

function wpdev_filter_login_head() {

	if ( has_custom_logo() ) :

		$image = wp_get_attachment_image_src( get_theme_mod( 'custom_logo' ), 'full' );
		?>
		<style type="text/css">
			.login h1 a {
				background-image: url(<?php echo esc_url( $image[0] ); ?>);
				-webkit-background-size: <?php echo absint( $image[1] )?>px;
				background-size: <?php echo absint( $image[1] ) ?>px;
				height: <?php echo absint( $image[2] ) ?>px;
				width: <?php echo absint( $image[1] ) ?>px;
			}
		</style>
		<?php
	endif;
}

Удалите ссылку на wordpress.org и замените её на ссылку на вашу домашнюю страницу.

// Замените ссылку на wordpress.org на ссылку на вашу домашнюю страницу.
add_filter( 'login_headerurl', 'new_wp_login_url');

function new_wp_login_url() {
	return home_url();
}

Список изменений

С версии 4.5.0 Введена.

Код the_custom_logo() WP 7.0

function the_custom_logo( $blog_id = 0 ) {
	echo get_custom_logo( $blog_id );
}
13 комментариев
Полезные - 3 Все