CMS Made Simple Forums
https://forum.cmsmadesimple.org/

Get parent alias
https://forum.cmsmadesimple.org/viewtopic.php?f=12&t=51001
Page 1 of 1

Author:  DiH [ Sun Jan 16, 2011 12:08 am ]
Post subject:  Get parent alias

Witam. Zwracam się z pytaniem dlaczego poniższy kod, dodany jako UDT działa w wersji 1.8.2 CMSMS, a w wersji 1.9.2 już nie, wywalając błąd:
Call to a member function Alias() on a non-object in /home/jakassciezka/_cms/archives/lib/content.functions.php(975) : eval()'d code on line 22
Ewentualne rozwiązania mile widziane.

Kod:
\$1:
global $gCms;
global $smarty;

$manager =& $gCms->GetHierarchyManager();

$var = 'root_page_alias';
if( isset($params['assign']) && $params['assign'] != '' )
{
  $var = $params['assign'];
}
$result = "NO RESULT";

$rows = array();

$thisPage = $gCms->variables['content_id'];
$currentNode = &$manager->sureGetNodeById($thisPage);

$i = 0;
while( isset($currentNode))
{
    $currentContent =& $currentNode->getContent();
    $result = $currentContent->Alias();
    $currentNode =& $currentNode->getParentNode();
    $rows[$i++] = $result;
}
$result = $rows[2];

$smarty->assign($var,$result);
echo $result;

Author:  RonnyK [ Sun Jan 16, 2011 8:27 am ]
Post subject:  Re: Get parent alias

To get parent alias, you could use CGSimpleSmarty. When installed, you can call,

\$1:
The parent page alias is {$cgsimple->get_parent_alias()}


Ronny

Author:  DiH [ Sun Jan 16, 2011 5:42 pm ]
Post subject:  Re: Get parent alias

Thanks, I'll try it out. But actually, getting parent alias isn't a problem for me. With the code I've used I was able to access whatever parent I wanted - whether it was only one level above in hierarchy, three, or four etc.

Author:  maranc [ Wed Jan 19, 2011 12:19 am ]
Post subject:  Re: Get parent alias

\$1:
global $gCms;
- zmienna globalna która nie działa od wersji 1.9 - to przyczyna. W twoim UDT dodaj wiersz:

$gCms = cmsms(); albo po prostu zadeklaruj globalną zmienną cmsms().

Przy okazji uwaga dla wielu PL użytkowników CMSMS - znaczna część UDT które znjadziecie na forach EN nie będzie działała właśnie z tego powodu.
BTW - Ronny dobrze Ci doradził, aby użyć CGSimpleSmarty, poza opcją parent jest tam w parę innych użytecznych tagów.

Pozdr.
Marek A.

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/