LISE fielddef Content Pages stores id -> frontend id2title ?
LISE fielddef Content Pages stores id -> frontend id2title ?
Hi,
Does anyone know how i can get (for example) the menutag or title from content pages in the LISE summary template (if you choose field content pages it gives a dropdown of all pages and stores the id of that page). That's perfect but a then want a field shown from that page in the listing like title or menutitle.
Is there a core function for this or do i have to make an udt and sign it back with smarty ?
Thnx
Does anyone know how i can get (for example) the menutag or title from content pages in the LISE summary template (if you choose field content pages it gives a dropdown of all pages and stores the id of that page). That's perfect but a then want a field shown from that page in the listing like title or menutitle.
Is there a core function for this or do i have to make an udt and sign it back with smarty ?
Thnx
Re: LISE fielddef Content Pages stores id -> frontend id2tit
Look at
Code: Select all
{page_attr}Re: LISE fielddef Content Pages stores id -> frontend id2tit
Hi,
Ik know page_attr but that's an option for getting content out of the current page. Not what i need.
Example in summary lise template... something like this
{foreach ...}
{$pageidfield from lise} - {other $fieldfromlise}<br>
{/foreach}
will show for example in the frontend
39 - title1
41 - title2
52 - title3
to
{foreach ...}
{get menu title from cms page via $pageidfield} - {other $fieldfromlise}<br>
{/foreach}
So i want the numbers replaced by the menudescription of pageid 39 etc..
Ik know page_attr but that's an option for getting content out of the current page. Not what i need.
Example in summary lise template... something like this
{foreach ...}
{$pageidfield from lise} - {other $fieldfromlise}<br>
{/foreach}
will show for example in the frontend
39 - title1
41 - title2
52 - title3
to
{foreach ...}
{get menu title from cms page via $pageidfield} - {other $fieldfromlise}<br>
{/foreach}
So i want the numbers replaced by the menudescription of pageid 39 etc..
Re: LISE fielddef Content Pages stores id -> frontend id2tit
Did you actually read the help for the tag?
Re: LISE fielddef Content Pages stores id -> frontend id2tit
Of course ... http://docs.cmsmadesimple.org/tags/cmsms-tags/page_attr
But that is for the page itself not in a foreach loop. There was no option like {page_attr pageid=39 key="extra1"} or i am missing something.
It's only for LISE -> summary template in combination with Contentpages when you want some page information in the foreach loop.
I solved it this simple way to add a pointer array in the template.
UDT example menutext
=========
$db = cmsms()->GetDb();
$query = "select content_id,content_name, content_alias, menu_text from cms_content where template_id = 35";
$result = $db->Execute($query);
$menutext= Array();
while ($result && $row = $result->FetchRow())
{
$menutext[$row['content_id']] = $row['menu_text'] ;
}
$smarty->assign('menutext', $menutext);
=========
{menutext} creates array $menutext['cmspageid'] = "the menutext from that page. The "where" in the sql above is only specific for me.
So it's just a fix with only one db call.
Open the LISE summary template and add {menutext} (or any name you want) on top. You can also assign the content_alias or content_name etc.
In my case the "content pages" field named "categorie".
Then change the field where the page id is stored (Content Pages) from {$item->categorie} to {$menutext[{$item->categorie}]}.
Now it shows the menutext from that pageid in the summary template.
Example...
{foreach from=$items item=item}
<span class="verslag-title">
<a href="{$item->url}" title="{$item->title}">{$menutext[{$item->categorie}]} - {$item->title}</a>
</span>
... etc
{/foreach}
So this works for me.
It's only for LISE -> summary template in combination with Contentpages when you want some page information.
I think i can mark this as solved ... ok ?
But that is for the page itself not in a foreach loop. There was no option like {page_attr pageid=39 key="extra1"} or i am missing something.
It's only for LISE -> summary template in combination with Contentpages when you want some page information in the foreach loop.
I solved it this simple way to add a pointer array in the template.
UDT example menutext
=========
$db = cmsms()->GetDb();
$query = "select content_id,content_name, content_alias, menu_text from cms_content where template_id = 35";
$result = $db->Execute($query);
$menutext= Array();
while ($result && $row = $result->FetchRow())
{
$menutext[$row['content_id']] = $row['menu_text'] ;
}
$smarty->assign('menutext', $menutext);
=========
{menutext} creates array $menutext['cmspageid'] = "the menutext from that page. The "where" in the sql above is only specific for me.
So it's just a fix with only one db call.
Open the LISE summary template and add {menutext} (or any name you want) on top. You can also assign the content_alias or content_name etc.
In my case the "content pages" field named "categorie".
Then change the field where the page id is stored (Content Pages) from {$item->categorie} to {$menutext[{$item->categorie}]}.
Now it shows the menutext from that pageid in the summary template.
Example...
{foreach from=$items item=item}
<span class="verslag-title">
<a href="{$item->url}" title="{$item->title}">{$menutext[{$item->categorie}]} - {$item->title}</a>
</span>
... etc
{/foreach}
So this works for me.
It's only for LISE -> summary template in combination with Contentpages when you want some page information.
I think i can mark this as solved ... ok ?
Re: LISE fielddef Content Pages stores id -> frontend id2tit
In CMSMS 2.x this tag has the 'page' parameter. You can use the page ID.
It's in the help of the tag in the CMSMS installation.
It's in the help of the tag in the CMSMS installation.
Re: LISE fielddef Content Pages stores id -> frontend id2tit
Hi,
Yes you're right i missed that one..
(optional) page (int|string) - An optional page id or alias to fetch the content from. If not specified, the current page is assumed.
{page_attr key="title" page="39"} works but ...
It hasn't some page fields i needed like menu_text. But it's usable for other solutions. In a foreach loop it wil call 20x the db (with 20 entries). In my solution only one so i keep the simple workaround.
Thanks for the help
Yes you're right i missed that one..
(optional) page (int|string) - An optional page id or alias to fetch the content from. If not specified, the current page is assumed.
{page_attr key="title" page="39"} works but ...
It hasn't some page fields i needed like menu_text. But it's usable for other solutions. In a foreach loop it wil call 20x the db (with 20 entries). In my solution only one so i keep the simple workaround.
Thanks for the help
Re: LISE fielddef Content Pages stores id -> frontend id2tit
I have the same problem...
I have the page ID coming from the LISE content-pages field definition.
But I would like to have the alias of the page
{page_attr key="alias" page="39"} or
{page_attr key="page_alias" page="39"}
is not working
How can I get the alias from a page if I have the page ID ?
Thanks for any help
Kind regards
Peter
I have the page ID coming from the LISE content-pages field definition.
But I would like to have the alias of the page
{page_attr key="alias" page="39"} or
{page_attr key="page_alias" page="39"}
is not working
How can I get the alias from a page if I have the page ID ?
Thanks for any help
Kind regards
Peter
Re: LISE fielddef Content Pages stores id -> frontend id2tit
Could you provide an example of what exactly you would like to accomplish? Maybe someone comes up with another approach/solution.
Re: LISE fielddef Content Pages stores id -> frontend id2tit
I'm using LISE.
Here I have a a field definition 'content pages'.
This output the content pages id. But I need the alias for that id.
I have in LISE a list of videos (youtube number, title and discription).
Some video's need to be show on the same content page others on other content pages. There for I have the selection content page, so I can tell on what page they belong to.
I use also the category definition to tel where they can be post (on what page), in the page template i call the LISE instance whith the catgory als the alias from that page.
it is hard to explain on text
So to be short...
I have list of youtube movies that need to show on pages, some pages will have 1 movie others will have 3 or more movies, so in the LiSE summary I need to group them en show them on the correct page.
Kind regards
Peter
Here I have a a field definition 'content pages'.
This output the content pages id. But I need the alias for that id.
I have in LISE a list of videos (youtube number, title and discription).
Some video's need to be show on the same content page others on other content pages. There for I have the selection content page, so I can tell on what page they belong to.
I use also the category definition to tel where they can be post (on what page), in the page template i call the LISE instance whith the catgory als the alias from that page.
it is hard to explain on text
So to be short...
I have list of youtube movies that need to show on pages, some pages will have 1 movie others will have 3 or more movies, so in the LiSE summary I need to group them en show them on the correct page.
Kind regards
Peter
Re: LISE fielddef Content Pages stores id -> frontend id2tit
I think I would try to find another approach (use the data you do get by default).
But this UDT might be useful (didn't test it very well):
Example usage:
I'm a little worried about efficiency when calling this UDT numerous time to get the same alias many times.
But this UDT might be useful (didn't test it very well):
Code: Select all
if (isset($params['page_id'])) {
$page_id = $params['page_id'];
} else {
echo 'page_id parameter must be set';
return false;
}
if (isset($params['assign'])) {
$assign = $params['assign'];
} else {
echo 'assign parameter must be set';
return false;
}
$alias = false;
$hm = cmsms()->GetHierarchyManager();
$node = $hm->find_by_tag('id',$page_id);
if ($node) $alias = $node->get_tag('alias');
$smarty->assign($assign,$alias);Code: Select all
{get_alias page_id=10 assign=palias}
alias: {$palias}<br>Re: LISE fielddef Content Pages stores id -> frontend id2tit
I am not seeing the reason why you need the page alias.
pedes wrote:I'm using LISE.
Here I have a a field definition 'content pages'.
This output the content pages id. But I need the alias for that id.
I have in LISE a list of videos (youtube number, title and discription).
Some video's need to be show on the same content page others on other content pages. There for I have the selection content page, so I can tell on what page they belong to.
I use also the category definition to tel where they can be post (on what page), in the page template i call the LISE instance whith the catgory als the alias from that page.
it is hard to explain on text
So to be short...![]()
I have list of youtube movies that need to show on pages, some pages will have 1 movie others will have 3 or more movies, so in the LiSE summary I need to group them en show them on the correct page.
Kind regards
Peter


