Настройки вывода блоков в топиках.

Пожалуйста не ругайтесь о дебилизме и существовании поиска. Не мог понять где отредактировать вывод блоков в топиках. В конфиге только главная и другие экшены…

'path' => array( 
		'___path.root.web___/blog$',
		'___path.root.web___/blog/*$',
		'___path.root.web___/blog/*/page\d+$',
		'___path.root.web___/blog/*/*\.html$',
		'___path.root.web___/blog/*\.html$',
	),


вот это вроде указывает на то что, указанные параметры тут должны действовать и на страницах топика. но блок отображается только на главной… У меня стоит плагин похожие топики. думал что из за него? где тогда менять, если это из за этого плагина?

21 комментарий

avatar
у плагина есть свой кофиг файл, а вообще я бы советовал пользовать решение от авадима по менеджеру блоков
avatar
у вас кстати опять проблема с пейджингом
avatar
да я её и не решал ещё)
avatar
поставьте aceblockmanager и не парьтесь
  • xyz
  • 0
avatar
Вроде бы нет версии этого модуля для LS 0.4.2. С ним было бы проще, конечно.
avatar
очень даже есть
avatar
Не поделитесь ссылкой? В списке модулей мне его найти не удалось. Может быть я просмотрел.
avatar
avatar
Там указано что модуль совместим с LS 0.4.1. Я пробовал его использовать с версией 0.4.2, но безуспешно.
avatar
А админка стоит? Она вроде как фиксит некоторые траблы совместимости
avatar
Заработало. Я просто был не внимателен. Спасибо вам за помощь.
avatar
Тебе нужно отключить блоки, ну там например Прямой эфир, Таги, Блоги и тд? Или я нечего не понял=)
  • Loci
  • 0
avatar
мне нужно добавить блок рекламы на страницах топика
avatar
1. Создаем файл .tpl и называем его например block.reklama.tpl
— вставляем нашу рекламу в файл block.reklama.tpl
— копируем наш файл в /templates/skin/new/

2. Топаем в /config/config.php 315строка
Ищем
/**
 * Настройки вывода блоков
 */
$config['block']['rule_index_blog'] = array(
	'path' => array( 
		'___path.root.web___/blog$',
		'___path.root.web___/blog/*$',
		'___path.root.web___/blog/*/page\d+$',
		'___path.root.web___/blog/*/*\.html$',
		'___path.root.web___/blog/*\.html$',
	),
	'action'  => array(
			'index', 'new'
		),
	'blocks'  => array(
			'right' => array('stream'=>array('priority'=>100),'tags'=>array('priority'=>50),'blogs'=>array('params'=>array(),'priority'=>1))
		),
	'clear' => false,
);


Нас интересует самая длинная строчка. Там указанно что подгружаются блоки:
stream — Прямой эфир
tags — облако тагов
blogs — Блоги

Добавляем в конец наш блок с рекламой block.reklama.tpl
'block.reklama.tpl'=>array('params'=>array(),'priority'=>101)


В итоге наша строчка должна получиться такой:
'blocks'  => array(
			'right' => array('stream'=>array('priority'=>100),'tags'=>array('priority'=>50),'blogs'=>array('params'=>array(),'priority'=>1), 'block.reklama.tpl'=>array('params'=>array(),'priority'=>101) )
		),
	'clear' => false,


Всё. Наш блок будет отображаться на самом вверху, на страницах:
сайт.ру/index
сайт.ру/new
сайт.ру/blog
сайт.ру/blog/muzuka/100500.html
сайт.ру/blog/100500.html

****************

Если блок с рекламой нужно опустить ниже, то изменяем параметр 'priority'=>101
Чем выше значение (у нас 101) тем выше блок

****************

Если нужно оформление блока, то вставляем код с рекламой в теги
<div class="block blogs">
	<div class="tl"><div class="tr"></div></div>
	<div class="cl"><div class="cr">
	хтмл код рекламы
	</div></div>
	<div class="bl"><div class="br"></div></div>
</div>


Если оформление не нужно, то просто вставляем код с рекламой

****************

Ну и естественно если надо сделать несколько блоков с рекламой, то проделываем всё тоже самой, только обзываем наш файл block.reklama1.tpl, block.reklama2.tpl

И в config.php незабываем переименовывать наш файл в block.reklama1.tpl, block.reklama2.tpl
avatar
Скажите, а есть способ показывать блок только на какой-то одной странице? Скажем только на сайт.ру/blog/muzuka/100500.html
avatar
Лично у меня такой потребности не было. Но я попробовал, вроде всё работает %)

Итак, скажем нам нужно вставить рекламу_банер только на страницу сайт.ру/blog/muzuka/100500.html

1. Создаем файл .tpl и называем его например block.blog.musuka.reklama.baner.tpl
— вставляем нашу рекламу в файл block.blog.musuka.reklama.baner.tpl
— копируем наш файл в /templates/skin/new/

2. Топаем в /config/config.php и после 355строки вставляем
/**
 * Настройки вывода блоков для определенных страниц
 */
$config['block']['rule_index_blog_my_1'] = array(
	'path' => array( 
		'___path.root.web___/blog/musuka/100500.html$',
	),
	'action'  => array(
			'',
		),
	'blocks'  => array(
			'right' => array('block.blog.musuka.reklama.baner.tpl'=>array('params'=>array(),'priority'=>101) )
		),
	'clear' => false,
);


Вот собственно и всё. Определённая реклама будет показываться на определенной странице.

****************

Если надо наш файл block.blog.musuka.reklama.baner.tpl показывать на нескольких страницах, то просто перечисляем нужные адреса:
$config['block']['rule_index_blog_my_1'] = array(
	'path' => array( 
		'___path.root.web___/blog/musuka/100500.html$',
		'___path.root.web___/blog/musuka/100600.html$',
		'___path.root.web___/blog/kino/100700.html$',
		'___path.root.web___/blog/100800.html$',
		'___path.root.web___/personal_blog$',
	),
	'action'  => array(
			'',
		),
	'blocks'  => array(
			'right' => array('block.blog.musuka.reklama.baner.tpl'=>array('params'=>array(),'priority'=>101) )
		),
	'clear' => false,
);


****************

Если нужно добавить другую рекламу, например реклама_флеш. Тогда создаем файл block.blog.musuka.reklama.flash.tpl
И проделываем всё тоже самое, только не забываем переименовывать $config['block']['rule_index_blog_my_2'] = array(
Название rule_index_blog_my_номер можно любое, главное чтоб не повторялось.
$config['block']['rule_index_blog_my_2'] = array(
	'path' => array( 
		'___path.root.web___/blog/musuka/100501.html$',
		'___path.root.web___/blog/musuka/100601.html$',
		'___path.root.web___/blog/kino/100701.html$',
		'___path.root.web___/blog/100801.html$',
	),
	'action'  => array(
			'',
		),
	'blocks'  => array(
			'right' => array('block.blog.musuka.reklama.flash.tpl'=>array('params'=>array(),'priority'=>101) )
		),
	'clear' => false,
);


****************

Если нужно на какую-ту страницу добавить сразу 2блока рекламы (тоесть в нашем случае реклама_банер и реклама_флеш)
Тогда:
$config['block']['rule_index_blog_my_тут.нужный.номер.например.1.2.3'] = array(
	'path' => array( 
		'___path.root.web___/blog/musuka/100501.html$',
		'___path.root.web___/blog/musuka/100601.html$',
		'___path.root.web___/blog/kino/100701.html$',
		'___path.root.web___/blog/100801.html$',
	),
	'action'  => array(
			'',
		),
	'blocks'  => array(
			'right' => array('block.blog.musuka.reklama.baner.tpl'=>array('params'=>array(),'priority'=>101), 'block.blog.musuka.reklama.flash.tpl'=>array('params'=>array(),'priority'=>101) )
		),
	'clear' => false,
);


****************

Если блок с рекламой нужно опустить ниже, то изменяем параметр 'priority'=>101
Чем выше значение (у нас 101) тем выше блок

****************
avatar
Спасибо вам огромное. Вы очень помогли.
avatar
перерыл весь сайт и только с вашим комментом смог сделать баннер с рекламой, спасибо)
avatar
Вот именно это я и делал, а он (блок рекламы) только на главной отображается…

У меня стоит красивые url и похожие блоки. Может из за них?
avatar
Мне кажется из-за красивых url. Но я в этом не уверен.
avatar
вот мне тоже так кажется…
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.