Минона, вот кусок кода как я делал у себя:
<div id="mainbody" class="container_16">
<?php if ($mod_count['sidebar1']) { ?>
<div class="grid_2" id="sidebar"><?php cmsModule("sidebar1");?></div>
<?php } ?>
<div id="main" class="<?php if (($mod_count['sidebar1']) || ($mod_count['sidebar'] )) {
if (($mod_count['sidebar1']) && ($mod_count['sidebar'] )) { ?> grid_11<?php }
else {
if ($mod_count['sidebar1']) { ?> grid_14<?php }
else {
if ($mod_count['sidebar']) { ?> grid_13<?php }
}}
}
else { ?>grid_16<?php } ?>">
<?php cmsModule('maintop'); ?>
<?php $messages = cmsCore::getSessionMessages(); ?>
<?php if ($messages) { ?>
<div class="sess_messages">
<?php foreach($messages as $message){ ?>
<?php echo $message; ?>
<?php } ?>
</div>
<?php } ?>
<?php cmsBody(); ?>
<?php cmsModule('mainbottom'); ?>
</div>
<?php if ($mod_count['sidebar']) { ?>
<div class="grid_3" id="sidebar"><?php cmsModule('sidebar'); ?></div>
<?php } ?>
</div>
sidebar1 — это левый сайтбар… все остальное дефлотное...
также у меня сетка 16 колоночная, но это не важно — саму суть думаю поймете...
возможные отображения:
— просто боди на весь грид
— боди и левый сатдар
— боди и правый сайтбар
— боди и два сайтбара вместе (забыл про него)))
Если в позиции ничего нет то пустого места не будет — всегда занят веся сетка грид)
То есть как заполните позиции так и будет на сайте — если позиция не заполнена то и выводиться не будет!)
Надеюсь что помог)
Я не профи делал для себя сам, может что и не правильно или не по феншую, но работает))