帝国CMS自定义页面模板真是的,资料太少!百度找了半天也没有找到什么方法。手动将栏目名称和链接写在帝国CMS模板中,但是一想,客户网站的后台页面名称并不确定。如果后台修改了页面名称,那岂不是还要找我再去改动模板,太麻烦也太低级了。有没有方法通过程序调用,可以自动化一点,智能化一点呢?不过夜深了,脑子也不清醒,先睡觉。
早上醒来,搜索解决方案,这次不用百度,用搜狗。还真在第一页就找到了解决方法。(这个事例告诉我们,适当地退一步,前方会变得海阔天空)
帝国CMS自定义页面导航及实现当前页面高亮代码操作截图。
一 很多自定义页面(即单页面)
二 将页面分别归属于自己的类别
三 一共制作四个自定义页面模板(每个类别对应于一个模板,因为侧边的导航菜单不同(即显示归属该分类的单页面列表))。
以下是实现代码,注意上图的蓝底,表示当前页面高亮的效果。
[e:loop={'select id,path,title from [!db.pre!]enewspage where classid=2 order by id',20,24,0}] <?php $pageurl=$public_r['newsurl'].str_replace('../../','',$bqr['path']); $css=''; if($classid=='page'.$bqr[id]) { $css='hover'; } ?> <li class="<?=$css?>"><a href="<?=$pageurl?>"> <?=$bqr[title]?> </a></li> [/e:loop]
注意1:classid=2 中的数字2,对应是类别的id。帝国后台可以看,如果参见上面的图2,对应的则是业务体系。
注意2:标红的代码是实现当前页面高亮,$css='hover'中的hover,是一个自定义的样式类名称,可以在样式中去写.hover样式,也可以换成已经写好的CSS样式名。
PS.因为帝国CMS实现自定义页面导航及当前页面高亮的资料比较少,而在企业网站制作中,又常常会用到单页面。是为记,以备用。