Для того чтобы держать в сайдбаре определенное древовидное меню раскрытытм или закрытым, я использую в цикле такое
<?php if (in_category('6')) {$locked = "ug1";} ?>
<?php if (in_category('7')) {$locked = "ug2";} ?>
И уже исходя из значения данной переменной формирую меню. Но как быть если сайдбар идет перед циклом? Как передать значение переменной "наверх"? Использовать второй раз цикл в сайдбаре типа
<?php
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if (in_category('6')) {$locked = "ug1";} ?>
<?php if (in_category('7')) {$locked = "ug2";} ?>
<?php endwhile; else: ?><?php endif; ?>
наверное не сильно ускорит работу блога.
Может есть способ определить, включен ли сингл пост (открытый в данный момент) в ту или инную рубрику без прибегания к циклу? Ведь как то ж работают тайтлы и остальные атрибуты!?