我需要实现的结构:
- 一个节点引用了多个 person 类型的分类术语。
- 一个人在每个节点扮演一个特定的角色。
- 此角色与不同节点上的此分类术语角色不同。
- 分类术语不必指定角色,因此角色也可以为空。
一个更好地描述所需行为的示例:
- 电影包含作为演员的分类术语。
- 演员在节点 A 上具有角色“万磁王”,在节点 B 上具有角色“甘道夫”。
我现在能想到的可能的实现方式:
- 使用以下字段将自定义表 nid_tid_role_mapping 添加到 drupal 数据库:nid、tid、role_name
- 挂钩 node_presave 并获取所有参与者分类术语。
- 只获取以下格式的“演员姓名(角色)”(fe“Ian McKellen(万磁王)”)
- 将 nid、tid 和角色添加到表 nid_tid_role_mapping
- 添加角色、nid 和 tid 后,将分类术语重命名为“Actor Name”。
- 在节点编辑表单中添加一个特殊的表格,其中列出了该节点的术语名称/角色映射。
我的方法对我来说似乎有点矫枉过正。有没有可以帮助我的模块?我什么都没找到...