简单的mysql查询来访问Drupal 7中的数据字段

时间:2015-10-12 20:42:45

标签: php mysql drupal drupal-7

我在使用Drupal 7时遇到了一些麻烦。我想要的是用php读出一个对象的所有field_data_fields。

示例:我需要显示CAR条目,我需要访问 field_data_field_speed field_data_field_size

问题是我找不到所有这些字段条目连接到对象id的位置。是否有一个非常简单的解决方案可以将所有字段连接到对象ID?

任何了解Drupal并能帮助我的人? :) Thx

2 个答案:

答案 0 :(得分:0)

听起来像EntityFieldQuery可以为您节省大量时间

编辑:添加您可以参考的样本

$query = new EntityFieldQuery();

$query
  ->entityCondition('entity_type', 'node')
  ->entityCondition('bundle', 'car')
  ->propertyCondition('status', 1); //Remove to include unpublished content
$result = $query->execute();

$nids = array_keys($result['node']);

if(!empty($nids)){

    $nodes = node_load_multiple($nids);

    foreach($node as $car_node){
        $node_wrapper = entity_metadata_wrapper('node', $car_node);

        //FINALLY! Here we can get the value of the field you need
        $size = $node_wrapper->field_size->value();

    }
}

答案 1 :(得分:0)

使用“views”模块要比编写自己的查询容易得多。这就是Drupal开发中的标准:

https://www.drupal.org/project/views