Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

Персонализация Шапки

Персональная Шапка сайта - это функция темы введенная в Версии 2.1. Персональная Шапка это изображение, выбранное для отображения в верхней части шапки темы.

Смотрите так же Appearance Header Screen.

Поддержка темой

Начиная с версии 3.4, темы должны использовать команду add_theme_support() в файле functions.php для поддержки персональных шапок сайта, например:

add_theme_support( 'custom-header' );

Вы так же можете добавить сюда стандартные аргументы, используя:

$defaults = array(
	'default-image'          => '',
	'random-default'         => false,
	'width'                  => 0,
	'height'                 => 0,
	'flex-height'            => false,
	'flex-width'             => false,
	'default-text-color'     => '',
	'header-text'            => true,
	'uploads'                => true,
	'wp-head-callback'       => '',
	'admin-head-callback'    => '',
	'admin-preview-callback' => '',
);
add_theme_support( 'custom-header', $defaults );

Пример

Установка персональной картинки в шапке

Задаст стандартную картинку для шапки, а так же ширину 980px и высоту 60px:

$args = array(
	'width'         => 980,
	'height'        => 60,
	'default-image' => get_template_directory_uri() . '/images/header.jpg',
);
add_theme_support( 'custom-header', $args );

Загрузка остальных персональных картинок для шапки

Задаст стандартную картинку для шапки и позволит владельцу сайта загружать другие изображения:

$args = array(
	'width'         => 980,
	'height'        => 60,
	'default-image' => get_template_directory_uri() . '/images/header.jpg',
	'uploads'       => true,
);
add_theme_support( 'custom-header', $args );

Использование гибких размеров шапки

Под гибкими размерами, в данном случае, имеетеся в виду устаналиваемый пользователем размер картинки, то есть длина и ширина.

Задаст включение гибких размеров шапки:

$args = array(
	'flex-width'    => true,
	'width'         => 980,
	'flex-width'    => true,
	'height'        => 200,
	'default-image' => get_template_directory_uri() . '/images/header.jpg',
);
add_theme_support( 'custom-header', $args );

обновите файл header.php следующими строками:

<img src="<?php header_image(); ?>" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" alt="" />

Related

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