Не там выводиться блок

Хочу создать блок который будет выводить информацию о блоге(такой же как и при создании топика), когда человек смотрит список топиков в блоге или пост из этого блога. Сам блок работает нормально, но вот в confige не могу настроить мето где он будет выводиться…
$config['block']['rule_blog'] = array(
	'path' => array( 
		'___path.root.web___/blog/*$',
	),
	'action'  => array(
			'blog' => ('blog')
		),
	'blocks'  => array('right' => array('block.Infoblog.tpl'=>array('priority'=>100),'stream'=>array('priority'=>90),'tags'=>array('priority'=>50),'blogs'=>array('params'=>array(),'priority'=>1))),
);

Так всё работает, но блок выводиться на странице new (http://cms/ls3/blog/new/), нужно что бы не выводился.

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

avatar
Первое — если пишешь экшен, то путь указывать не обязательно.
block.Infoblog.tpl
Такого блока нет, зато есть
block.blogInfo.tpl

Для его работы нужно отдавать переменную с ID блога.
avatar
так я создал block.Infoblog.tpl он отличается от block.blogInfo.tpl, да сам блок работает отлично…
Если не указывать путь всё равно, не правильно.

Как я понял в чём проблема:

	'path' => array( 
		'___path.root.web___/blog/*$',//как я понял это адрес типа http://livestreet.ru/blog/questions но под эту гребёнку попадает и http://livestreet.ru/blog/new <-коллективные блоги....
avatar
понятно что в blog/new мы не можем получить getDescription()(инфо о блоге) он выдаёт ошибку:
Fatal error: Call to a member function getDescription() on a non-object in Z:\home\cms\www\ls3\templates\compiled\my2\%%89^896^8961B4FB%%block.Infoblog.tpl.php on line 9
avatar
  • Loci
  • 0
avatar
Я бы вам рекомендовал подучить русский язык.
Ведь Если вопрос глагола заканчивается на ть (что делать? что сделать?) то в самом слове-глаголе мы пишем ть. Однако в вашем случае глагол отвечает на вопрос Что делает?

Т.е. проще говоря, если в вопросе глагола послеТ идетЬ то в самом глаголе пишем ТЬ, а есть просто т, то т(без мягкого знака)

Блок (что делает?) выводится
avatar
ОК, учту ваши пожелания и буду более внимателен. Но если вы такой умный может подскажите, как вывести блоки?!
avatar
К сожалению могу помочь только тем, что гдето в поиске я видел чтото подобное…
avatar
кароче разобрался, но как-то коряво… Получается что переменная OBlog не равна 0 только на странице топика в блоге и в посте (OTopic->GetBlog) на странице new Oblog==0, тогда пишем {if $Oblog}выводим блок{/if}

Немного огорчило, то что в плагине aceblockmanager нельзя написать так:

'include'=>array('blog/*$')
'exclude'=>array('blog/new')

То есть выводить на адресах типа: blog/lya_lya/, но исключить на странице blog/new, при этом по адресу site/blog/ блока не должно быть.

Если так можно, то подскажите.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.