field_read_instances

  1. drupal
    1. drupal7
Versionen
drupal7 field_read_instances($params = array(), $include_additional = array())

Read in field instances that match an array of conditions.

Übergabeparameter

$param An array of properties to use in selecting a field instance. Valid keys include any column of the field_config_instance table. If NULL, all instances will be returned.

$include_additional The default behavior of this function is to not return field instances that are inactive or have been marked deleted. Setting $include_additional['include_inactive'] or $include_additional['include_deleted'] to TRUE will override this behavior.

Rückgabewert

An array of instances matching the arguments.

Verwandte Themen

▾ 2 functions call field_read_instances()

field_read_instance in modules/field/field.crud.inc
Read a single instance record directly from the database. Generally, you should use the field_info_instance() instead.
_field_info_collate_fields in modules/field/field.info.inc
Collate all information on existing fields and instances.

Code

modules/field/field.crud.inc, line 598

<?php
function field_read_instances($params = array(), $include_additional = array()) {
  $query = db_select('field_config_instance', 'fci', array('fetch' => PDO::FETCH_ASSOC));
  $query->join('field_config', 'fc', 'fc.id = fci.field_id');
  $query->fields('fci');
  #$query->fields('fc', array('type'));

  // Turn the conditions into a query.
  foreach ($params as $key => $value) {
    $query->condition('fci.' . $key, $value);
  }
  $query->condition('fc.active', 1);
  if (!isset($include_additional['include_inactive']) || !$include_additional['include_inactive']) {
    $query->condition('fci.widget_active', 1);
  }
  if (!isset($include_additional['include_deleted']) || !$include_additional['include_deleted']) {
    $query->condition('fc.deleted', 0);
    $query->condition('fci.deleted', 0);
  }

  $instances = array();
  $results = $query->execute();

  foreach ($results as $record) {
    $instance = unserialize($record['data']);
    $instance['id'] = $record['id'];
    $instance['field_id'] = $record['field_id'];
    $instance['field_name'] = $record['field_name'];
    $instance['bundle'] = $record['bundle'];
    $instance['weight'] = $record['weight'];
    $instance['deleted'] = $record['deleted'];
    $instance['widget']['type'] = $record['widget_type'];
    $instance['widget']['module'] = $record['widget_module'];
    $instance['widget']['active'] = $record['widget_active'];

    // TODO D7 : Set default widget settings, default instance settings, default display settings.
    // (the modules that defined them might have changed since the instance was last saved).

    module_invoke_all('field_read_instance', $instance);
    $instances[] = $instance;
  }
  return $instances;
}
?>

Kommentare

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
  • Internet- und E-Mail-Adressen werden automatisch umgewandelt.
  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Zeilen und Absätze werden automatisch erzeugt.

Weitere Informationen über Formatierungsoptionen

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
  • Internet- und E-Mail-Adressen werden automatisch umgewandelt.
  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Zeilen und Absätze werden automatisch erzeugt.

Weitere Informationen über Formatierungsoptionen