В WordPress функция «get_custom_logo» позволяет вам получить и отобразить собственный логотип, назначенный вашей теме. Однако могут быть случаи, когда вам потребуется динамически обновлять URL-адрес логотипа. В этой статье мы рассмотрим шесть различных методов, используя разговорный язык, и приведем примеры кода, которые помогут вам легко обновить URL-адрес логотипа.
Метод 1. Обновите URL-адрес логотипа с помощью фильтра «get_custom_logo».
Один из способов обновить URL-адрес логотипа — использовать фильтр «get_custom_logo». Этот фильтр позволяет вам изменить вывод функции «get_custom_logo». Вот пример того, как вы можете использовать этот фильтр для обновления URL-адреса логотипа:
function update_logo_url($html, $blog_id) {
$new_logo_url = 'https://example.com/new-logo.png';
$html = str_replace('href="', 'href="' . $new_logo_url, $html);
return $html;
}
add_filter('get_custom_logo', 'update_logo_url', 10, 2);
Метод 2. Измените URL-адрес логотипа с помощью JavaScript
Другой подход — использовать JavaScript для динамического обновления URL-адреса логотипа. Этого можно добиться, выделив элемент логотипа и изменив его атрибут href. Вот пример:
(function() {
var logoLink = document.querySelector('.custom-logo-link');
var newLogoUrl = 'https://example.com/new-logo.png';
logoLink.href = newLogoUrl;
})();
Метод 3. Обновите URL-адрес логотипа с помощью CSS
Если вы предпочитаете решение на основе CSS, вы можете изменить URL-адрес логотипа с помощью свойства background-image. Вот пример:
.custom-logo-link {
background-image: url('https://example.com/new-logo.png');
}
Метод 4. Обновите URL-адрес логотипа в настройщике тем
WordPress предоставляет встроенный настройщик тем, который позволяет пользователям изменять различные аспекты своей темы, включая URL-адрес логотипа. Вы можете добавить поле ввода URL-адреса логотипа в настройщике и использовать функции get_theme_modи set_theme_modдля обновления URL-адреса логотипа. Вот пример:
function custom_logo_url_customizer($wp_customize) {
$wp_customize->add_setting('logo_url', array(
'default' => '',
));
$wp_customize->add_control('logo_url', array(
'label' => 'Logo URL',
'section' => 'title_tagline',
'type' => 'text',
));
}
add_action('customize_register', 'custom_logo_url_customizer');
function update_logo_url() {
$new_logo_url = get_theme_mod('logo_url');
// Update the logo URL wherever it's used
}
add_action('wp_head', 'update_logo_url');
Метод 5. Обновите URL-адрес логотипа с помощью настраиваемого поля.
Если вы используете плагин настраиваемых полей, например Advanced Custom Fields, вы можете создать настраиваемое поле для URL-адреса логотипа и соответствующим образом обновить его. Вот пример:
$new_logo_url = get_field('logo_url');
// Use $new_logo_url wherever the logo URL is outputted
Метод 6. Обновите URL-адрес логотипа с помощью параметра пользовательской темы.
Если ваша тема имеет пользовательские параметры, вы можете создать специальное поле для URL-адреса логотипа на странице параметров темы. Вот пример:
$new_logo_url = get_option('logo_url');
// Use $new_logo_url wherever the logo URL is outputted
Обновить URL-адрес логотипа в WordPress можно различными способами. Предпочитаете ли вы использовать фильтры, JavaScript, CSS, настройщик тем, настраиваемые поля или параметры темы, у вас есть несколько вариантов на выбор. Выберите метод, который лучше всего соответствует вашим требованиям, и реализуйте его для динамического обновления URL-адреса логотипа.