<?php $is_sidebar_left = $this->hasWidgetsOn('left-top', 'left-center', 'left-bottom'); $is_sidebar_right = $this->hasWidgetsOn('right-top', 'right-center', 'right-bottom'); $section_class = $is_sidebar_left ? 'if_left' : 'full'; ?>
<?php $is_sidebar_left = $this->hasWidgetsOn('left-top', 'left-center', 'left-bottom'); $is_sidebar_right = $this->hasWidgetsOn('right-top', 'right-center', 'right-bottom'); if($is_sidebar_left && $is_sidebar_right){ $section_class = 'sectionclass1'; } elseif($is_sidebar_left && !$is_sidebar_right){ $section_class = 'sectionclass2'; } elseif(!$is_sidebar_left && $is_sidebar_right){ $section_class = 'sectionclass3'; } else{ $section_class = 'sectionclass4'; } <?php if($is_sidebar_left){ ?> <div> <?php $this->widgets('left-top', 'left-center', 'left-bottom', true, 'wrapper'); ?> </div> <?php } ?> <section class="<?php echo $section_class; ?>"> <?php $this->body(); ?> </section> <?php if($is_sidebar_right){ ?> <div> <?php $this->widgets('right-top', 'right-center', 'right-bottom', true, 'wrapper'); ?> </div> <?php } ?>
Здесь идет проверка на наличие садбаров, если есть оба сайдбара, то центральной части присваивается класс sectionclass1, если есть левый, но нет правого, то sectionclass2, если нет правого, но есть левый — sectionclass3, если нет ни того ни другого, то sectionclass4.
Вроде бы нигде не ошибся, если что, можете закидать камнями))