我在菜单中使用此代码:
{def $menu = treemenu( $module_result.path, false(), array( 'folder', 'article', 'page', 'listing', 'blog' ), 1, 2, true )}
{if $menu}
<a href={$module_result.path[1].url_alias|ezurl} class="leftnavtop{cond(eq($current_node.node_id, $module_result.path[1].node_id), 'ON', '')}">{$module_result.path[1].text|shorten(24)|wash()}</a>
{foreach $menu as $key => $item}
<a class="{concat('leftnav', cond($item.level|eq(1), '2', ''), cond($item.is_selected, 'ON', ''))}" href={$item.url_alias|ezurl()}>{$item.text|shorten(32)|wash()}</a>
{/foreach}
{/if}
此链接名称取自“short_name”,url也来自“short_name”。
是否可以更改一点代码,因此我从“name”获取链接名称,并将url保留为“short_name”。
名称:链接名称
短名称:url example
最终解决方案:链接名称(但请访问www.mysite.com/url-example)
希望我解释得很好。
我尝试了一些解决方案,但我没有运气。
提前致谢
答案 0 :(得分:0)
我通常不会使用treemenu()
生成我的菜单,因此我不知道您是否可以访问data_map
中的$item
。但是,我会尝试这样做:
{def $menu = treemenu( $module_result.path, false(), array( 'folder', 'article', 'page', 'listing', 'blog' ), 1, 2, true )}
{if $menu}
<a href={$module_result.path[1].url_alias|ezurl} class="leftnavtop{cond(eq($current_node.node_id, $module_result.path[1].node_id), 'ON', '')}">{$module_result.path[1].text|shorten(24)|wash()}</a>
{foreach $menu as $key => $item}
<a class="{concat('leftnav', cond($item.level|eq(1), '2', ''), cond($item.is_selected, 'ON', ''))}" href={$item.url_alias|ezurl()}>{$item.data_map.name.content|wash()}</a>
{/foreach}
{/if}
就像我说的那样,我不确定你是否可以从data_map
访问$item
,但如果你这样做,你应该能够通过它获得真实的名字。
答案 1 :(得分:0)
您是否尝试在课堂描述中修改网址和名称模式?
您可以使用<short_name|name>
将第一个非空白字段用作节点网址或名称。