Hi vrienden,
Ik ben bezig met een website met CMSMS 1.11.13. en gebruik de ECB module (extended content blocks) voor de pageselector.
Nu krijg ik wel de pagina ID terug van ECB en om een link te maken is dat geen probleem, maar ik wil de rootparent checken m.b.v. simple smarty. hiervoor heb ik echter de $page-alias nodig.
Ik veronderstel dat ik een UDT moet aanmaken met stukje code dat $gCms->GetPageAliasFromContentID gebruikt, om de pagina alias terug te vinden, maar echt veel info vindt ik hier niet over terug.
Wie kan me helpen?
PS: ja ik heb deze site nog niet geupdate naar 1.12.x omdat sommige modules het in 1.12.x gewoon niet meer doen anders...
[solved / opgelost ]page alias vinden met content ID
Moderator: velden
[solved / opgelost ]page alias vinden met content ID
Last edited by HarmO on Tue Oct 13, 2015 9:39 am, edited 1 time in total.
Kind regards,
HarmO
HarmO
Re: page alias vinden met content ID
Je zou dit met de {cms_selflink} tag kunnen doen.
- + - + - + - + - + - + -
LATEST TUTORIAL AT CMS CAN BE SIMPLE:
Migrating Company Directory module to LISE
Migrating Company Directory module to LISE
- + - + - + - + - + - + -
Re: page alias vinden met content ID
Hey Rolf, bedankt voor de feedback!
Ik heb dit even gechecked, maar zie de oplossing niet.
Ik zal mijn probleem even verduidelijken.
ik heb volgende boomstructuur:
Simple smarty heeft de functie get_root alias die mij in staat zou stellen om dit te achterhalen adh van pagina alias.
Mijn probleem, ik heb de contentID gekregen via de ECB page selector, maar ik heb dus de page alias nodig.
Ik zie niet hoe de {cms_selflink} -tag mij de page alias bezorgt...
Ik heb dit even gechecked, maar zie de oplossing niet.
Ik zal mijn probleem even verduidelijken.
ik heb volgende boomstructuur:
- abc
- def
- page 1
- page 2
- def
- xyz
- page 3
- page 4
Simple smarty heeft de functie get_root alias die mij in staat zou stellen om dit te achterhalen adh van pagina alias.
Code: Select all
$cgsimple->get_root_alias([$alias],[$assign])
Ik zie niet hoe de {cms_selflink} -tag mij de page alias bezorgt...
Kind regards,
HarmO
HarmO
Re: page alias vinden met content ID
Ok, ik heb een oplossing gevonden.
Hopend dat dit correct werk voor alle pagina's:
Hopend dat dit correct werk voor alle pagina's:
Code: Select all
{$cgsimple->get_root_alias({cms_selflink href=$selectedpage}|pathinfo:$smarty.const.PATHINFO_FILENAME)}
Kind regards,
HarmO
HarmO
Re: [solved / opgelost ]page alias vinden met content ID
Werkt enkel als je het page-url veldje niet gebruikt.


Kind regards,
HarmO
HarmO
Re: [solved / opgelost ]page alias vinden met content ID
Ik vond deze code nog ergens in een UDT.
ZELF TESTEN
Weet niet of ie werkt. Waarschijnlijk beetje afgeleid van één of andere core functie of uit de CGSimpleSmarty module.
Naam UDT: get_root_alias_by_id
Gebruik:
ZELF TESTEN
Weet niet of ie werkt. Waarschijnlijk beetje afgeleid van één of andere core functie of uit de CGSimpleSmarty module.
Naam UDT: get_root_alias_by_id
Code: Select all
if (isset($params['id'])) {$id = $params['id'];} else {return;}
$gCms = cmsms();
$hm = $gCms->GetHierarchyManager();
$stack = array();
$node = $hm->find_by_tag('id',$id);
while( $node && $node->get_tag('id') > 0 ) {
$stack[] = $node;
$node = $node->getParent();
}
if( count($stack) == 0 ) return;
$alias = $stack[count($stack)-1]->get_tag('alias');
if( isset($params['assign'])) {
$smarty->assign($params['assign'],$alias);
return;
}
return $alias;
Code: Select all
{get_root_alias_by_id id=28}
of
{get_root_alias_by_id id=28 assign=rootalias}
rootalias: {$rootalias}
Re: [solved / opgelost ]page alias vinden met content ID
Hoe kan ik ook de alias vinden met de content id?
Ik heb via de UDT van Velden de root_alias.
Doe ik dat via een Simple smarty functie?
Ik heb dus de content id, maar ik wil de friendly url hiervan.
Mvg,
Pete
Ik heb via de UDT van Velden de root_alias.
Doe ik dat via een Simple smarty functie?
Ik heb dus de content id, maar ik wil de friendly url hiervan.
Mvg,
Pete
Re: [solved / opgelost ]page alias vinden met content ID
Zoek je de alias of de friendly url? Dat is namelijk wat anders.pedes wrote:Hoe kan ik ook de alias vinden met de content id?
...
Ik heb dus de content id, maar ik wil de friendly url hiervan.
...
Friendly url is makkelijk via {cms_selflink href=<content id>}