Drupal 7 EntityFieldQuery使用两个字段

时间:2012-01-08 00:54:26

标签: drupal drupal-7

我根据正在检查的布尔字段创建了一系列图像。现在我想扩展该条件逻辑,以便使用选择列表或分类列表从类别中进行选择。这就是我所拥有的:

function ycs_list() {
  $query = new EntityFieldQuery;
  $query->entityCondition('entity_type', 'node')
 ->entityCondition('bundle', YCS_NODE_TYPE)
  ->propertyCondition('status', 1)
  ->fieldCondition('field_active_image', 'value', 1, '=');
  $result = $query->execute();
  return $result;
}

如何将其扩展为使用两个文件?如果我要使用分类法列表,我会使用除EntityFieldQuery以外的其他内容,还是仅仅是这个的附加条件?

1 个答案:

答案 0 :(得分:1)

您可以根据需要向EntityFieldQuery添加任意数量的条件,并且通过Drupal 7中的字段将词汇表链接到节点,您可以非常轻松地将它们包含在内。唯一需要注意的是,术语引用字段中术语ID的列名称为tid,而不是value,在很多情况下都会使用。{/ p>

以下假设您的术语参考字段名为field_my_term_field

$query = new EntityFieldQuery;
$query->entityCondition('entity_type', 'node')
  ->entityCondition('bundle', YCS_NODE_TYPE)
  ->propertyCondition('status', 1)
  ->fieldCondition('field_active_image', 'value', 1, '=')
  ->fieldCondition('field_my_term_field', 'tid', $the_term_id);

$result = $query->execute();
return $result;