Drupal - 在视图中突出显示选定节点
Posted
技术标签:
【中文标题】Drupal - 在视图中突出显示选定节点【英文标题】:Drupal - Selected Node Highlighting in Views 【发布时间】:2010-03-26 11:45:01 【问题描述】:Drupal 问题:
有没有人有使用视图和突出显示选定/当前节点的方法。
例如:
我有一个标题下的文章列表:
2009 年文章
狗训练
猫清洁
蛇争霸
3 篇文章是从视图中创建的(即:2009 年的最新文章)...当用户创建新文章时,它们会按标题自动添加到此视图中。
我现在需要找到一种方法,如果用户点击说 CAT CLEANING.... 并且出现了 cat cleaning 文章,则视图中的 CAT CLEANING 变为粗体(或某些 CSS 指示它是当前文章。)
我知道使用 MENU 很容易,但我不想强迫用户将新文章添加到菜单中。
非常感谢,JD
【问题讨论】:
【参考方案1】:这是你需要做的:
-
使用 Firebug 查找视图列表项的类(例如 Dog training)
在主题文件夹中手动为视图列表项添加 CSS,或者使用更方便的工具,例如 css 注入器模块
CSS 会是这样的
.view-name .view-name-of-field-here a:active 文本装饰:下划线; 颜色:红色
如果视图列表项中的 URL 与网页相同,我们将使用“活动”CSS 伪类为链接着色和下划线。
【讨论】:
【参考方案2】:您可以覆盖您正在使用的任何视图模板(通过单击视图编辑页面上的主题:信息链接来执行此操作),并且基本上说“如果指向此节点的链接与当前查看的路径相同,则向它添加一个“当前”类。”
【讨论】:
【参考方案3】:-
在上下文过滤器中,添加“Global:null”并选择“从 URL 获取内容 ID”
添加 NID 字段并设置“从显示中排除”
添加一个数学字段来评估两个 NID 之间的差异:“!1-[nid]”并设置“从显示中排除”
在字段中添加一个类以突出显示为“active[expression]”,其中 active0 是当前节点的类。
有视频教程来实现这一点: http://youtu.be/0uSfuVmO6zk
【讨论】:
我的解决方案的最佳答案,附上必须观看的视频。简直拯救了我的一天!以上是关于Drupal - 在视图中突出显示选定节点的主要内容,如果未能解决你的问题,请参考以下文章