📜  Drupal 8 9 entityTypeManager 通过 cid 获取多条评论 - PHP (1)

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

Drupal 8/9 entityTypeManager: 通过 cid 获取多条评论

在 Drupal 8/9 中,我们可以使用 entityTypeManager 来获取评论。具体可以参考下面的代码片段:

$entityTypeManager = \Drupal::entityTypeManager();

// 获取评论 Query。
$commentStorage = $entityTypeManager->getStorage('comment');
$query = $commentStorage->getQuery();

// 添加过滤条件。
$query->condition('cid', $cid);

// 执行查询。
$cids = $query->execute();

// 获取评论实体。
$comments = $commentStorage->loadMultiple($cids);

解释一下上面的代码片段:

  1. 首先,我们需要获取 Entity Type Manager 实例,可以使用 \Drupal::entityTypeManager() 函数来获取。
  2. 然后,我们可以通过 entityTypeManager 来获取评论存储实例,使用 getStorage() 方法即可,参数为 'comment' 表示获取评论。
  3. 接下来,我们需要获取评论 Query,使用 $commentStorage->getQuery() 方法即可。
  4. 然后,我们可以添加过滤条件,使用 $query->condition('cid', $cid) 来添加过滤条件,其中 $cid 表示评论的 cid,即评论 ID。
  5. 最后,我们执行查询,使用 $query->execute() 来执行查询,得到的结果是符合条件的评论 ID。
  6. 最后一步,我们可以使用 $commentStorage->loadMultiple($cids) 方法,通过评论 ID 获取多个评论实体。

这样,我们就可以获取多条评论了。

以上就是通过 Entity Type Manager 获取多条评论的方法,希望对你有所帮助。