导航栏目高亮
开启SSI支持后,由于模板会被ssi包含的方式引入到模板中,被多个页面引用的include模板只会存在一个静态页面,因此没法在包含模板中使用上下文中的 ${Catalog.catalogId}
来判断当前页面所属栏目,可以通过在当前页面中使用javascript来判断。
使用场景:内容详情页判断当前内容所属的顶级栏目
头部导航区块模板
<@cms_catalog level="Root" condition="tree_level=1" size="10">
<#list DataList as c>
<a href="${c.link}" class="nav-${Catalog.catalogId}">${c.name}</a>
</#list>
</@cms_catalog>
内容详情页模板
......
<@cms_include file="header.template.html"></@cms_include>
<script type="text/javascript">
$(".nav-${(Content.catalogAncestors?split(':'))[0]}").addClass("active");
</script>
......
关闭SSI支持,include引用的模板会将模板解析后的html输出到当前模板中,因此可以直接使用当前模板上下文中的变量 ${Catalog.catalogId}
来判断当前页面所属栏目。
使用场景:内容详情页判断当前内容所属的顶级栏目
头部导航区块模板
<@cms_catalog level="Root" condition="tree_level=1" size="10">
<#list DataList as c>
<a href="${c.link}" class="${((Content.catalogAncestors?split(':'))[0]))==(c.catalogId?string))?then('active','')}">${c.name}</a>
</#list>
</@cms_catalog>
内容详情页模板
......
<@cms_include file="header.template.html"></@cms_include>
......