Как определить, содержит ли пост контент виджета?
У меня есть зарегистрированная область виджетов под названием "my-header", которая влияет на абсолютное позиционирование элементов ниже неё в разметке.
Мне нужно выполнить запрос в header.php, чтобы определить, присутствует ли сайдбар для текущего поста, и вывести CSS-класс в тег body моей темы. Этот класс я буду использовать для корректировки абсолютного позиционирования элементов.
Существует ли метод, который можно вызвать отдельно от метода отображения сайдбара, чтобы определить, есть ли у поста контент виджета для "my-sidebar"? Например, функция, которая просто возвращает true/false?
После изучения widgets.php я попробовал использовать is_active_sidebar('my-header'), но она возвращает true для всех страниц. Мне нужна функция, которая принимает пост в качестве аргумента. Если такой функции нет, возможно, мне придётся создать свою собственную.

<?php
$bodyclass = "";
// находимся на странице 'single'? например, запись, страница или другой тип записи?
if(is_single()){
// это запись типа 'page'? или это запись блога?
global $post;
if($post->post_type == 'page'){
// теперь можно проверить, есть ли активный контент в сайдбаре
if( is_active_sidebar('my-header')){
$bodyclass="wehavesidebarcontentyay";
}
}
}
?>
<body <?php body_class($bodyclass); ?>>
Хотя я уверен, что если у вас есть body_class в теге body, то у вас уже есть необходимые css-классы и селекторы для этого без PHP-кода.
