您在这里谈论的是两种不同的概念。第一个问题与何时要将内容组织到不同类别中,或者是否要在现有内容类型之间建立关系有关。另一个问题是,如果在使用分类法时,最好使用分类法参考字段或实体参考字段。
关于第一个概念
这取决于您的用例。正如您所提到的,分类法非常适合构建层次结构,但是理想情况下,您不应使用分类法来包含实际内容。原因很简单-虽然您可以将字段添加到分类术语中,但是分类中的所有层次结构级别都使用相同的字段。以您属于不同团队的成员为例,这可能会导致问题。如果要存储有关团队或成员的信息,而不仅仅是姓名,例如,如果要存储有关成员的名字,姓氏和传记的信息,并将此字段添加到分类法中,也可以根据团队条件使用。而且,如果您为团队添加了团队描述字段,则这些字段将显示给团队成员。
分级组织相似项目时,最好使用分类法。类似标签,例如:
实体引用非常适合在内容类型之间建立关系。例如,当您拥有节点类型“团队”和节点类型“团队成员”时,每个都有自己的字段。或节点类型“歌曲”引用“专辑”,而专辑本身引用“音乐家”。在这方面,实体引用比分类法更灵活,因为它允许更复杂的关系。使用视图时,还可以利用这些关系。以您的示例为例,您可以创建所有团队成员的视图,并使用实体引用建立关系,并且可以显示团队内容类型上的任何字段以及成员节点中的字段。
混合节点引用和分类法字段也是合法的。在您的团队示例中,团队和成员都可以是节点,并通过实体引用相互引用。同时,该部门可能是所有可用部门的分类法。
关于第二个概念
当DO发布D7时,它附带了一个分类法参考字段,以供参考分类法时使用。从那时起,我们就看到了Entity API模块的发布,因此也看到了实体引用模块,并且由于术语和分类法是实体,因此可以像引用其他任何实体一样引用它们。在这一点上,两者的工作原理非常相似,在许多情况下,使用哪一个都无关紧要。但是,仍然有一些贡献的模块提供了字段格式化程序和窗口小部件,它们仅适用于一个或另一个。因此,在很大程度上应该使用分类标准引用还是实体引用,这取决于您是否需要这样的格式化程序。
由于DO将D8中的实体参考字段替换为分类参考字段,因此我更喜欢使用实体参考字段来链接到分类法,而不是分类模块提供的字段。