Вывод трехколоночной конструкции

+33
2.1K
Спрашивают часто, последний вопрос здесь.

Условие:
если выводятся правая = а и левая колонки = б, то средняя = с
если выводится только правая =а или только левая =б, то средняя = с+а или с+б
если не выводится ни правая =а, ни левая =б, то средняя =а+с+б

Получается вот так:

  1. <?php
  2. if ($mod_count['sidebar']&&$mod_count['leftbar']) { ?>grid_6<?php }
  3. elseif ($mod_count['sidebar']||$mod_count['leftbar']) { ?>grid_9<?php } else { ?>grid_12<?php } ?>">
Полностью вся конструкция, я считаю основной части шаблона, выглядит так:

  1. <!-- Columns Container -->
  2.  
  3. <div id="page">
  4. <div class="clear"></div>
  5. <div id="mainbody" class="container_12">
  6. <?php if ($mod_count['leftbar']) { ?>
  7. <div class="grid_3" id="leftbar"><?php cmsModule('leftbar'); ?></div>
  8. <?php } ?>
  9. <div id="main" class="<?php
  10. if ($mod_count['sidebar']&&$mod_count['leftbar']) { ?>grid_6<?php }
  11. elseif ($mod_count['sidebar']||$mod_count['leftbar']) { ?>grid_9<?php } else { ?>grid_12<?php } ?>">
  12. <?php cmsModule('maintop'); ?>
  13. <?php $messages = cmsCore::getSessionMessages(); ?>
  14. <?php if ($messages) { ?>
  15. <div class="sess_messages">
  16. <?php foreach($messages as $message){ ?>
  17. <?php echo $message; ?>
  18. <?php } ?>
  19. </div>
  20. <?php } ?>
  21. <?php cmsBody(); ?>
  22. <?php cmsModule('mainbottom'); ?>
  23. </div>
  24. <?php if ($mod_count['sidebar']) { ?>
  25. <div class="grid_3" id="sidebar"><?php cmsModule('sidebar'); ?></div>
  26. <?php } ?>
  27. </div>
  28. </div>
  29.  
  30. <!-- Columns Container -->
Стройте больше новых шаблонов, хороших и разных!

Забыл, добавляю.
Вверху шаблона, вот в этот блок

  1. <?php
  2. if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }
  3. $inUser = cmsUser::getInstance();
  4. $inCore = cmsCore::getInstance();
  5.  
  6. $mod_count['top'] = cmsCountModules('top');
  7. $mod_count['sidebar'] = cmsCountModules('sidebar');
  8. ?>
добавьте

  1. $mod_count['leftbar'] = cmsCountModules('leftbar');
LonelyCat LonelyCat 12 лет назад #
Комментарий удален
0
Darik Darik 12 лет назад #
у меня и так в шаблоне это реализовано где то тут скачивал) но все равно +1 за то что другим помогаешь
0
artlab artlab 12 лет назад #
Да,было решение от lansya,у многих в темплейте до си так и написано lansya1 $=lansya+lansya2=$lansya ну или как-то так))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
0
lezginka.ru lezginka.ru 12 лет назад #
+
LonelyCat, если это для чайников, то там не хватает:
куда добавить,где прописать и т.д. на примере дефолта
LonelyCat LonelyCat 12 лет назад #
Комментарий удален
0
Raiden Raiden 10 лет назад #
Сейчас если после page заменить, исчезают секции с topmenu, top и pathway (глубиномер).
+1
reload reload 12 лет назад #
Интересует всплывающий вопрос)
Вот я добавил левый и правый сайдбар, вывожу их на страницах "пользователи" и...
Профиля пользователей отображаются некорректно) не помещается все в отведенный грид)
Переписывать все шаблоны нужно ручками или есть более правильное решение?
Спасибо
LonelyCat LonelyCat 12 лет назад #
Комментарий удален
0
reload reload 12 лет назад #
да грид я сделал новый 16 колоночный с минимальными отступами. Но вот к примеру как убрать такую штуку без правки шаблона?
http://uavip.ru/users/Nataliya/photos/private6.html
LonelyCat LonelyCat 12 лет назад #
Комментарий удален
0
reload reload 12 лет назад #
дак в том то и проблема) какую ширину задать если сегодня там только правый сайдбар а завтра нужно поставить еще и левый)
Каждый раз править не очень удобно, думал может можно как то по научному) а не как всегда...
Ну да ладно) пущай так остается, а то, пока все настроишь, то уже и обновляться пора) а там опять двадцать пять))
0
skewes skewes 9 лет назад #
Ребята, а в каком файле править это?

Еще от автора

Другие колонки для шаблона
Приветствую сообщество. Давненько меня тут не было))) По просьбе raiden сделал вывод еще одного sidebar-а.
"Фейк" Фейсбука для 1.10.1
После длительного отсутствия - почти год), шаблон для 1.10.1 ---- по неоднократным просьбам ---- Продолжение этой темы.
Модуль "Последние комментарии" с прокруткой
Используем те же файлы, что и в предыдущем моем посте, меняем только mod_comments.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.