Entitätsfelder auflisten

8

Ich frage mich, ob es einen guten und einfachen Weg gibt, alle Felder einer Entität zu erhalten.

Ich habe ein Taxonomie-Vokabular. Die Begriffe haben ein spezielles Feld, das ich in einem Auswahlfeld in einem meiner Module auflisten möchte, damit Benutzer einen speziellen Wert des Begriffs auswählen können. Daher brauche ich eine Möglichkeit, die möglichen Felder für diesen Begriff aufzulisten.

Johnny
quelle

Antworten:

4

Drupal 7

Sie können versuchen:

  $info = entity_get_property_info($entity_type);
  $info += array(
    'properties' => array(),
    'bundles' => array(),
  );
  // Add all bundle properties.
  foreach ($info['bundles'] as $bundle => $bundle_info) {
    $bundle_info += array('properties' => array());
    $info['properties'] += $bundle_info['properties'];
  }
  var_dump($info['properties']);

Wenn Sie das Entity- Modul installiert haben, versuchen Sie Folgendes :

entity_get_all_property_info('node');

Drush-Befehle (einer davon):

drush eval "var_dump(entity_get_all_property_info('node'));"
drush eval "print var_export(array_keys(entity_get_all_property_info('node')));"
Kenorb
quelle
2

Kann auch die Funktion verwenden: field_info_field_map ()

Anstelle der Rückgabe von Entitäten an Felder beginnt sie am Feld und geht an die Entitäten. Das zweite ist in Ordnung, um zu sehen, wohin Felder gehen, während field_info_instances () zeigt, wie Entitäten erstellt werden.

jmary
quelle