3
使用具有多个值的实体字段条件执行查询
我有一个具有实体引用字段的内容类型,该字段允许用户在该字段中添加多个分类法术语。我正在尝试执行查询,以获取在该字段内具有一组特定分类法术语的节点。 像这样,在该字段中使用一个值可以很好地工作。 $query = \Drupal::entityQuery('node') ->condition('status', NODE_PUBLISHED) ->condition('type', 'custom_type') ->condition('custom_taxonomy', 2) ->sort('field_last_name', DESC); 其中2是我要搜索的术语的ID。但是,当我尝试搜索包含两个特定术语的节点时, $query = \Drupal::entityQuery('node') ->condition('status', NODE_PUBLISHED) ->condition('type', 'custom_type') ->condition('custom_taxonomy', [2,8]) ->sort('field_last_name', DESC); 我收到错误 无效的参数编号:绑定变量的数量与令牌的数量不匹配: 我也尝试过 $query = \Drupal::entityQuery('node') ->condition('status', NODE_PUBLISHED) ->condition('type', 'custom_type') ->condition('custom_taxonomy', [2,8], 'IN') ->sort('field_last_name', DESC); 这不会失败,但是不会提供预期的结果。它显示具有项2 或项8的每个节点,而不是预期的项2 和项8。如何执行查询,以检查节点在实体引用字段中是否具有多个特定值?