has_custom_logo()
Проверяет установлен ли логотип для сайта.
Логотип - это отдельная возможность темы, добавленная в версии 4.5. Её нужно активировать с помощью add_theme_support( 'custom-logo' )
Работает на основе: get_theme_mod()
1 раз — 0.000037 сек (очень быстро) | 50000 раз — 0.59 сек (очень быстро) | PHP 7.0.5, WP 4.5
Хуков нет.
Возвращает
true|false
. Установлен логотип или нет.
Использование
if( has_custom_logo( $blog_id ) ){ // логотип есть }
- $blog_id(число)
- ID сайта/блога, для которого нужно проверить наличие логотипа.
По умолчанию: 0 (текущий блог)
Примеры
#1 Аналогичный более быстрый вариант
Проверим установлен ли логотип для сайта.
if( $logo = get_custom_logo() ){ echo $logo; }
#2 Проверим установлен ли логотип для сайта
if( has_custom_logo() ){ // логотип есть выводим его echo get_custom_logo(); }
Список изменений
С версии 4.5.0 | Введена. |
Код has_custom_logo() has custom logo WP 6.6.2
function has_custom_logo( $blog_id = 0 ) { $switched_blog = false; if ( is_multisite() && ! empty( $blog_id ) && get_current_blog_id() !== (int) $blog_id ) { switch_to_blog( $blog_id ); $switched_blog = true; } $custom_logo_id = get_theme_mod( 'custom_logo' ); $is_image = ( $custom_logo_id ) ? wp_attachment_is_image( $custom_logo_id ) : false; if ( $switched_blog ) { restore_current_blog(); } return $is_image; }