Как из кода шаблона узнать страницу-родит

Обсуждение CMS Made Simple в России.

Moderators: iturbay, wdwp

Post Reply
m1st
New Member
New Member
Posts: 2
Joined: Mon Aug 17, 2009 6:56 am

Как из кода шаблона узнать страницу-родит

Post by m1st »

Сабж возник, когда решил привинтить к сайту на CMSMS графическое меню (пункты меню - cms_selflink с imageonly=1). В коде шаблона картинки динамически подменяются, дабы показывать пользователю, на какой странице он находится. Меню двухуровневое, однако картинками обозначается только верхний уровень. Собсна, на дочерних страницах картинка должна быть та же, что и у родителя.
Подскажите, плз! Весь русский форум перерыл, аналогичных ситуаций у народа не возникало, видимо.
von-hamster
Power Poster
Power Poster
Posts: 339
Joined: Thu Nov 01, 2007 3:11 pm

Re: Как из кода шаблона узнать страницу-родит

Post by von-hamster »

Если я правильно понял:

Я выкладывал тэг для поиска родителя текущего элемента... Там можно просто заменить возврат альяса возвратом картинки. Ну или вообще объект, из которого можно получить все, что нужно... Соответственно - правишь тэг таким образом, чтобы по альясу можно было получить код картинки родительского элемента, для второго уровня меню...

Ссылка на топик:
http://forum.cmsmadesimple.org/index.ph ... 209.0.html
m1st
New Member
New Member
Posts: 2
Joined: Mon Aug 17, 2009 6:56 am

Re: Как из кода шаблона узнать страницу-родит

Post by m1st »

von-hamster wrote: Если я правильно понял:

Я выкладывал тэг для поиска родителя текущего элемента... Там можно просто заменить возврат альяса возвратом картинки. Ну или вообще объект, из которого можно получить все, что нужно... Соответственно - правишь тэг таким образом, чтобы по альясу можно было получить код картинки родительского элемента, для второго уровня меню...
Все так, тока не картинка, а все-таки альяс родителя нужен. Взял за основу твой тег, переделал под свои нужды. Выкладываю.

Код для получения алиаса непосредственного родителя.

Code: Select all

global $gCms;
$self = ContentOperations::LoadContentFromId($gCms->variables['content_id']);
if ($self->ParentId() != -1) 
	$parent_alias = ContentOperations::LoadContentFromId($self->ParentId()) -> Alias();
else
	$parent_alias = "none";


$smarty = &$gCms->GetSmarty();
$smarty->assign('parent_alias', $parent_alias);
Спасибо:)
Post Reply

Return to “Russian - русский”