@fenya-fl

Как вставлять 2 отличающихся логотипа при посадке верстки на wordpress?

В хедере должен быть один логотип, а в футере он немного отличается. Как сделать так, чтобы админ смог добавлять 2 разных логотипа в админке?

С помощью add_theme_support( 'custom-logo' ) можно добавлять 2 лого?
  • Вопрос задан
  • 1958 просмотров
Пригласить эксперта
Ответы на вопрос 2
deniscopro
@deniscopro Куратор тега WordPress
WordPress-разработчик, denisco.pro
С помощью add_theme_support( 'custom-logo' ) можно добавлять 2 лого?

Можно добавить дополнительное поле с помощью Customizer и потом вывести его в теме.

Примерно так:
function my_customize_register( $wp_customize ) {
    $wp_customize->add_setting('header_logo', array(
        'default' => '',
        'sanitize_callback' => 'absint',
    ));

    $wp_customize->add_control(new WP_Customize_Media_Control($wp_customize, 'header_logo', array(
        'section' => 'title_tagline',
        'label' => 'Логотип'
    )));

    $wp_customize->selective_refresh->add_partial('header_logo', array(
        'selector' => '.header-logo',
        'render_callback' => function() {
            $logo = get_theme_mod('header_logo');
            $img = wp_get_attachment_image_src($logo, 'full');
            if ($img) {
                return '<img src="' . $img[0] . '" alt="">';
            } else {
                return '';
            }
        }
    ));
}
add_action( 'customize_register', 'my_customize_register' );


И вывести в шапке
<a href="/" class="header-logo">
	<?php
	$header_logo = get_theme_mod('header_logo');
	$img = wp_get_attachment_image_src($header_logo, 'full');
	if ($img) :
		?>
		<img src="<?php echo $img[0]; ?>" alt="">
	<?php endif; ?>
</a>


Ответ написан
Комментировать
HectorPrima
@HectorPrima
программист
Грубо говоря, половина функционала wordpress напрямую зависит от вашей темы.
Исправьте тему, добавьте функционал.
Не умеете, закажите работу фрилансеру.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы