Languages: English • (Add your language)
Theme Logo is a theme feature, first introduced in Version 4.5. This feature allows themes to add custom logos.
Since Version 4.5, themes should use add_theme_support() in the functions.php file in order to support Theme Logo, like so:
add_theme_support( 'custom-logo' );
Note that you can add custom arguments using:
add_theme_support( 'custom-logo', array( 'height' => 100, 'width' => 400, 'flex-height' => true, 'flex-width' => true, 'header-text' => array( 'site-title', 'site-description' ), ) );
Setting up theme logo with custom size:
function theme_prefix_setup() { add_theme_support( 'custom-logo', array( 'height' => 100, 'width' => 400, 'flex-width' => true, ) ); } add_action( 'after_setup_theme', 'theme_prefix_setup' );
Output custom logo:
function theme_prefix_the_custom_logo() { if ( function_exists( 'the_custom_logo' ) ) { the_custom_logo(); } }
Use function_exists()
wrapper to maintain backwards compatibility with older versions of WordPress.
To get the URL of the custom logo image:
$custom_logo_id = get_theme_mod( 'custom_logo' ); $image = wp_get_attachment_image_src( $custom_logo_id , 'full' ); echo $image[0];
or
$custom_logo_id = get_theme_mod( 'custom_logo' ); $custom_logo_url = wp_get_attachment_image_url( $custom_logo_id , 'full' ); echo '<img src="' . esc_url( $custom_logo_url ) . '" alt="">';
Theme Support:
add_theme_support(),
remove_theme_support(),
current_theme_supports()
Theme Features:
sidebar,
menus,
post-formats,
title-tag,
custom-background,
custom-header,
custom-logo,
post-thumbnails,
automatic-feed-links,
html5,
editor-style,
content_width