使用分类法菜单从词汇表中显示活动术语

时间:2013-12-27 13:21:18

标签: drupal-7 drupal-taxonomy

我想要的内容:主菜单中活跃词汇表。

到目前为止

我做了什么

  1. 我使用了taxonomy_menu模块。
  2. 创建分类法(类别)。
  3. 添加了具有布尔值的“状态”字段(0 =无效,1 =有效)。
  4. 在类别(Cat1和Cat2)中添加了两个术语。
  5. Cat1 =有效,Cat2 =无效。
  6. “编辑词汇表”部分中的配置菜单。
  7. 问题:所有词汇表都包含在主菜单中。我只想要那些Status = Active应该显示在主菜单中的术语。

2 个答案:

答案 0 :(得分:0)

使taxonomy_menu模块知道您的status字段的过程似乎很难实现,特别是如果您需要 - 您可能会这样 - 当status值更改时重建分类法菜单

一个可能更简单的解决方案是在主题级别执行操作,将.inactive类添加到非活动项并将其隐藏在css中。由于Taxonomy Menu模块对主题无效,因此应该使用Menu模块主题功能来处理。因此,您最终将编写一个(例如)CUSTOM_menu_link()函数,在该函数中,您需要测试链接是否来自分类生成的菜单(不知道如何为每个菜单项执行此操作)然后,如果是这种情况,请加载该术语,测试status字段并采取相应措施。不完全是一个优雅的解决方案,而且开销很大。

如果可能,我建议您在配置分类 - 菜单后,使用内置功能在admin/structure/menu/manage/main-menu的管理界面启用或禁用菜单项。

答案 1 :(得分:0)

试试这个模块: 的 https://www.drupal.org/project/termstatus

  

此模块为分类术语添加状态标志。使用此标志可以指定是否应发布术语。拥有相应权限的用户可以访问未发布的条款。