在构建网站时,使用DedeCMS创建一个具有高亮显示功能的子栏目导航是非常实用的功能。这可以通过设置鼠标点击后变色并添加特定的class样式来实现。
首先,定义CSS样式:
当用户首次打开首页或者点击其他页面时,如果没有指定class='red2',首页会自动应用这个class。
以下是首页链接的标记:
如果点击了某个栏目,则该栏目将增加class='red2',从而改变颜色。
接下来是栏目的标记:
{dede:channel type='top' row='8' currentstyle="~typename~ " }
[field:typename/]
{/dede:channel}
需要注意的是,对于子栏目,currentstyle标签默认是不生效的。为了解决这个问题,需要对配置文件进行修改。
解决currentstyle无效的方法如下:
修改include/taglib/channel.lib.php 文件中的第133行:
if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
修改为
if( ($row['id']==$refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
最后,这里是子栏目currentstyle调用的示例:
{dede:channel typeid='3' currentstyle="~typename~ " }
[field:typename/]
{/dede:channel}
通过以上步骤,您可以成功地为DedeCMS站点设置一个鼠标点击后高亮显示的子栏目导航。这样不仅提升了用户体验,也增强了网站的专业感和吸引力。
记得在实际应用中根据您的具体需求调整样式和逻辑。