我需要能够隐藏/取消发布/禁用我的分类法术语。由于无法以取消发布节点的方式“取消发布”分类法术语,所以我在分类法术语中创建了一个布尔字段,该字段保存其状态(启用/禁用)。
我想使用这个布尔字段的值来确定是否在分类法术语名称中添加警告文本(例如。Termname [DISABLED]),以便正确地警告选择该分类法术语的用户。
如果有关系,我目前正在使用select list小部件。
我知道我可以在hook_field_widget_options_select_form_alter中查找每个术语,因为tids和术语名称在$element中是可用的,但是我希望有一个解决方案,它不会要求我再次从数据库中重新加载/重新获取这个术语。
发布于 2012-04-16 12:48:49
我知道我可以在hook_field_widget_options_select_form_alter中查找每个术语,因为tids和术语名称在$element中是可用的,但是我希望有一个解决方案,它不会要求我再次从数据库中重新加载/重新获取这个术语。
不幸的是,我认为您将不得不再次加载并执行hook_field_widget_options_select_form_alter。有许多函数加载分类法信息。可能是有用的,其中一些可能具有缓存,并被用于构建节点表单,因此缓存已经启动。
您关心的是性能还是代码复杂性?
发布于 2015-09-28 20:32:27
2011年创建了一个名为Term Status的Drupal模块(这个答案发布前一年)。它可以在https://www.drupal.org/project/termstatus上使用,并允许您发布和取消发布分类术语。每个术语上都会出现一个“已发布”复选框,以让您控制该术语是否应该被其他人看到。如果我没记错的话,它还提供了一个允许特权用户查看未发布的术语的权限。
https://drupal.stackexchange.com/questions/28177
复制相似问题