Как сделать два sidebar-а???????

Подскажите как можно сделать 2 сайдбара????, на шаблоне NEW, чтобы Sidebar-left был 20% container 55% и правый 20%

Что куда нужно внести чтобы так получилось сделать?

13 комментариев

avatar
придетсья немного ручками поработать, так как изначально один сайдбар, создавайте новый блок(можно плагином можно руками), через style.css позиционируйте его, опять же через style.css делайте #content ширину которую нужно. #sidebar делайте ширину которую нужно, и своему новому блоку делайте ширину которую нужно (предположим вы его назвали #sidebar1)ну и потом уже добавляйте в ваш новый блок слева нужную информацию.
avatar
  • k2fl
  • 0
avatar
в style.css добавь
#leftbar {float: left; width:20%;}

потом в header перед
<div id="content" {if $bNoSidebar}style="width:100%;"{/if}>

добавь
<div id="leftbar">	{include file=leftbar.tpl}</div>	


далее создай файл leftbar.tpl и туда пиши что хочешь
avatar
header.tpl
avatar
Сделал по инструкции. Ничего не получилось…
Порядок действий:
1. Скопировал файл sidebar.tpl, переименовал его в leftbar.tpl
2. Удалил из него код, вместо удаленного написал
<div id="leftbar">test</div>

3. В style.css в строке 47, после #content и #sidebar добавил
#leftbar {float: left; width:20%;}
изминил во всех сторчках ширину 20% левый сайдбар, 20% правый, 60% — контент.
4. В header перед
<div id="content" {if $bNoSidebar}style="width:100%;"{/if}>
добавил
<div id="leftbar"> {include file=leftbar.tpl}</div>

Результат:
второго сайдбара не появилось, а слово «test» отобразилось в правой верхней части над контентом.
Пожалуйста, кто знает, разъясните, что не так и как правильно сделать два сайдбара.
avatar
слово test слева над контентам, а не справа, попутал))
avatar
Сделал.
Напутал в css)))
нужно просто прописать в style.css, например:

#sidebar {float: left; width:20%;}
#content {float: left; width:60%;}
#leftbar {float: left; width:20%;}
avatar
Покажите, что получилось…
avatar
Сейчас сайт в разработке — в локале на денвере, нечего еще показывать. А так — аналогичный сайдбар слева. А если в вышеуказанном коде css поиграть c float, заменив left на right, то сайдбары меняются местами. Сложности были с тем, изначально, что в дефолтном шаблоне стили для контента и сайдбара прописаны следующим образом:

#content { width: 67%; background: #fff; float: right; clear: right; padding-top: 20px; padding-bottom: 20px; zoom: 1; }
#sidebar { width: 32%; float: left; margin-left: 1%; margin-top: -6px; }

из-за этого новый сайдбар смещался.
Все это было заменено на
#sidebar {float: left; width:20%;}
#content {float: left; width:60%;}
#leftbar {float: left; width:20%;}

В общем-то и все. Ну и не забываем сделать пустой файл leftbar.tpl и добавить строчку в header.tpl — об этом написано выше.
Еще нюанс: если файл leftbar.tpl совсем пустой, то он и не отображается. Пропишите там какой-нибудь текст (код я сам еще не вставлял) и этот текст чудненько отобразиться в новом сайдбаре.
avatar
Назрел новый вопрос.
Кто знает — напишите, плиз.
Два сайдбара сделано, а вот как разделить блоки, чтобы, например, блок «блоги» размещался в одном сайдбаре, а блок «прямой эфир» и «теги» размещался в другом.
И главное!!!
Нужно чтобы при использовании плагина «aceblockmanager» блоки, которые выводятся плагином выводились в одном сайдбаре, а блоки «прямой эфир», «теги» и «блоги» в другом.
avatar
Вот. Я готовил этот текст как описание для скина, но пусть уж тут полежит. Он нифига не отшлифован и довольно сумбурный, так что если что то непонятно задавайте более конкретные вопросы
avatar
Спасибо. Супер. То, что надо. Сейчас буду делать. Что получится — отпишусь здесь.
avatar
В шаблоном simple не получается создать левый sidebar.
grid.css
#content 	{ width: 730px; float: left;}
#sidebar	{ width: 230px; float: left;}
#leftbar     { width: 230px; float: left;}

header.tpl
<body onload="prettyPrint()">
	{hook run='body_begin'}

	<div id="container">

	    {include file='header_top.tpl'}

		<div id="wrapper">
<div id="leftbar"> {include file=leftbar.tpl}</div>
			<div id="content">
			        {if $sAction=='index'}{insert name="block" block=simpleTopicsTop}{/if}

                    {include file='nav.tpl'}

					{include file='window_login.tpl'}
					{include file='system_message.tpl'}
					
					{hook run='content_begin'}

Вот что в итоге
Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "C:\apache\localhost\www/templates/skin/simple\header.tpl" on line 70 "<div id="leftbar"> {include file=leftbar.tpl}</div>" - Unexpected ".", expected one of: "}" , " "' in C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_templatecompilerbase.php:439 Stack trace: #0 C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_templateparser.php(2889): Smarty_Internal_TemplateCompilerBase->trigger_template_error() #1 C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_templateparser.php(2954): Smarty_Internal_Templateparser->yy_syntax_error(56, '.') #2 C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_smartytemplatecompiler.php(51): Smarty_Internal_Templateparser->doParse(56, '.') #3 C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_templatecompilerbase. in C:\apache\localhost\www\engine\lib\external\Smarty\libs\sysplugins\smarty_internal_templatecompilerbase.php on line 439
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.