📜  Drupal 9 通过词汇机器名称 vid 获取分类术语对象 - PHP (1)

📅  最后修改于: 2023-12-03 14:40:53.279000             🧑  作者: Mango

Drupal 9 通过词汇机器名称 vid 获取分类术语对象 - PHP

Drupal 9 是一个流行的开源内容管理系统,它提供了许多方便的 API,用于管理内容和实体。其中之一是 Taxonomy API,它允许您创建和管理分类术语。

在 Drupal 9 中,每个分类术语都由一个名为“词汇”的实体来表示。词汇有许多属性,包括名称、描述、别名和机器名称等。机器名称 vid 是一个用于在代码中引用词汇的标识符,它唯一地标识了一个词汇。

如果您需要在代码中获取特定 vid 的分类术语对象,那么 Drupal 9 为此提供了一个非常简单的 API 函数 — taxonomy_term_load_multiple()

以下是初始代码片段:

$vid = 'my_vocabulary_machine_name';
$terms = taxonomy_term_load_multiple(FALSE, array(), TRUE, FALSE);

这个函数有四个参数:

  1. vid — 要获取的词汇机器名称
  2. $conditions — 用于限制获取词汇的条件
  3. $reset — 是否重新加载分类术语数据
  4. $load_entities — 是否返回加载的分类术语实体对象

在上面的代码片段中,我们将 vid 设置为“my_vocabulary_machine_name”,这是我们希望获取的词汇机器名称。我们将第一个参数设置为 FALSE,以便不限制条件,也不需要限制条件。第二个参数是空数组,这意味着我们不需要设置任何条件。

我们将第三个参数设置为 TRUE,以重新加载分类术语数据。最后,我们将第四个参数设置为 TRUE,以返回加载的分类术语实体对象,而不仅仅是一些响应数据。

在获取分类术语对象后,您可以按如下方式访问词汇属性:

foreach ($terms as $term) {
  $name = $term->getName();
  $description = $term->getDescription();
  $tid = $term->id();
}

在上面的代码片段中,我们使用 $term 对象中可用的方法来访问分类术语的名称、描述和识别号(tid)。这些方法用于获取分类术语对象的属性值。

除了上面讨论的用法外,taxonomy_term_load_multiple() 还可以添加更多的参数,例如使程序支持需要多个 vid 或限制分类术语的类型等。

通过此 API 可以方便地获取特定的词汇机器名称 vid 相应的分类术语对象。