分类涉及到把事物放进不同的类别中。在管理界面“管理➤内容管理➤分类”下面(如果在这里没有的话,请确认启用了分类模块),你将找到Drupal对分类的支持。当涉及到Drupal的分类系统时,用词的准确性是非常重要的。让我们学习一下你将会遇到的一些常用词。
术语
术语就是一个实际的标签,它将要应用到节点之上。例如,假定你有一个包含产品评估的网站。你可以使用术语“劣”,“合格”,“优”来为每个评估加个标签。术语有时也称为标签,将一个术语分配到一个对象(比如说一个产品评估节点)上的动作称之为标签化。
抽象层次
过一会,当你查看数据结构时,你将会看到,Drupal为输入的所有术语添加了一个抽象层次,在内部是通过数字ID来引用它们的,而不是通过名字。例如,如果你输入了前面的那些术语,但是你的经理觉得“差”字儿比“劣”字儿更好一些,没关系。你简单的编辑这个号码为1的术语,将它从“劣”改为“差”,这就可以了。因为Drupal在内部看到的是术语的号码,所以在Drupa内部一切将继续正常工作。
同义词
当你定义一个术语时,你可以输入该术语的同义词;同义词是具有同样语义的又一术语。Drupal中的分类功能允许你输入同义词,并提供了用来存储的数据库表,以及提供了一些实用函数比如taxonomy_get_synonyms($tid)和taxonomy_get_synonym_root($synonym),但是这些功能的用户界面的实现则留给了第3方模块,比如术语表模块(
http://drupal.org/project/glossary)。
词汇表
一个词汇表包含了一组术语。Drupal允许你将一个词汇表与一个或多个节点类型关联起来。这一松散的关联,在跨节点类型归类时非常有用。例如,如果你有一个站点,允许用户可以提交旅游相关的游记和图片,那么你可以使用一个词汇表,在里面使用国家名字作为术语;这样你就可以方便的查看带有“比利时”标签的所有游记和图片。词汇表编辑界面如图14-1所示。
必须的词汇表
词汇表可以是必须的,也可以不是必须的。如果一个词汇表是必须的,那么用户在提交节点表单以前必须为节点选择一个术语。如果不是必须的,那么用户提交表单时,可以使用默认术语“没有选择任何选项”。
受控的词汇表
当词汇表中的术语数量被限定时(也就是说,用户不能添加新的术语),此时它被称为受控的词汇表。对于一个受控的词汇表,其中的术语一般都通过下拉选择框显示给用户。当然,管理员,或者拥有管理分类权限的用户可以添加,删除,或者修改术语。
标签
一个标签实际上就是一个术语。然而,“标签化”这个词儿,一般隐含了由网站用户来创建标签这层含义。这与受控的词汇表刚好相反。当用户提交一个节点时,可以输入他们自己的术语,而不是从一个词汇表中选择一个术语。如果术语还不是词汇表的一部分,那么它将被添加进来。在词汇表的编辑界面,如果标签复选框被选中了,那么词汇表的用户界面将显示为一个文本输入框(启用了JavaScript自动完成),而不是受控的词汇表所使用的下拉选择框。
图14-1 添加词汇表所用的表单
单个VS多个术语
在词汇表编辑界面,通过使用“多重选择”复选框,Drupal允许你声明,对于一个给定的节点,是使用单个术语还是使用多个术语。如果声明了多个术语,那么节点提交表单中的用户界面也将改变,从简单的下拉选择框变成了多选下拉字段。
提示:“多重选择”选项仅仅适用于受控的词汇表,对于启用了标签的词汇表不适用。
上层
当添加或编辑一个术语时,在表单的“高级选项”部分(如图14-2所示),可以选择一个上一层术语。这个在术语之间定义了一个层级关系。
图 14-2. 用来添加术语的表单
相关术语
如果一个词汇表允许使用相关术语,那么当你定义一个新术语或者编辑一个已有术语时,将会显示一个多选字段,这样你就可以从已有术语中选出与该术语相关的了。该字段出现在表单的“高级选项”部分(如图14-2所示)。
重量
每个词汇表都有一个重量,从-10到10(如图14-1所示)。这用来控制词汇表在节点提交表单中的位置。词汇表的重量越小,在词汇表字段集(Vocabularies fieldset)中的位置越靠前;重量越大,位置越靠后。
每个术语也都有一个重量。术语的重量,是用来决定它在用户下拉选择框中的位置。这一顺序与“管理➤内容管理➤分类➤列出术语”中的一致。
老葛的Drupal培训班 Think in Drupal