Как изменить размеры изображения заголовка по умолчанию в двадцать четвертой дочерней теме?


Я создаю дочернюю тему на основе двадцати четырех и хочу изменить размеры пользовательского изображения заголовка. Пользовательская страница заголовка гласит:

Изображения должны иметь ширину не менее 1260 пикселей. Рекомендуемая ширина составляет 1260 пикселей. Рекомендуемая высота составляет 240 пикселей.

Похоже, это связано с настройками по умолчанию, установленными в /inc/custom-header.php:

function twentyfourteen_custom_header_setup() {
    add_theme_support( 'custom-header', apply_filters( 'twentyfourteen_custom_header_args', array(
        'default-text-color'     => 'fff',
        'width'                  => 1260,
        'height'                 => 240,
        'flex-height'            => true,
        'wp-head-callback'       => 'twentyfourteen_header_style',
        'admin-head-callback'    => 'twentyfourteen_admin_header_style',
        'admin-preview-callback' => 'twentyfourteen_admin_header_image',
    ) ) );
}
add_action( 'after_setup_theme', 'twentyfourteen_custom_header_setup' );

Этот файл включен twentyfourteen/functions.php:

require get_template_directory() . '/inc/custom-header.php';

Поскольку в этой строке используется get_template_directory(), а не get_stylesheet_directory(), я не могу переопределите его моей собственной версией custom-header.php.

Есть ли способ изменить запрошенные размеры в моей дочерней теме?

Author: Alex Angas, 2014-04-16

2 answers

Это фильтр для пользовательской функции заголовка в теме двадцать четырнадцать. Вы можете использовать это, чтобы добавить свои новые размеры. Вот что я использую для изменения размера по умолчанию.

function wpse_custom_header_setup() {
    add_theme_support( 'custom-header', apply_filters( 'wpse_header_args', array(
        'width'                  => 1460,
        'height'                 => 220,
    ) ) );
}
add_action( 'after_setup_theme', 'wpse_custom_header_setup' );

РЕДАКТИРОВАТЬ

Также установите максимальную ширину заголовка сайта, найденного в строках с 847 по 853 соответственно

.site-header {
    max-width: 1460px;
}
 1
Author: Pieter Goosen, 2014-07-15 04:37:34

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

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

add_theme_support( 'custom-header', array(
'header_image'    => '',
'header-selector' => '.site-title a',
'header-text'     => false,
'height'          => 90,
'width'           => 300,
) );

Описанный выше метод влияет ТОЛЬКО на пользовательскую функцию заголовка в разделе Внешний вид > Заголовок, когда вы добавляете изображение с помощью этой функции что заставляет вас обрезать до этих точных размеров и не изменяет размер существующего изображения заголовка, уже добавленного с помощью любого метода. Для этого вам нужно будет изменить код CSS, который влияет на изображение #заголовка сайта.

Вы также можете использовать фильтр theme_mod_header_image

Примечание: Класс выбора заголовка будет отличаться в зависимости от темы.

 2
Author: Brad Dalton, 2014-05-15 03:22:17