Liste des champs d'entité


8

Je me demande s'il existe un moyen simple et efficace d'obtenir tous les champs d'une entité.

J'ai un vocabulaire taxonomique. Ses termes ont un champ spécial que je veux créer dans une case de sélection de l'un de mes modules, afin que les utilisateurs puissent sélectionner une valeur spéciale du terme. Par conséquent, j'ai besoin d'un moyen de répertorier les champs possibles pour ce terme.

Réponses:



4

Drupal 7

Vous pouvez essayer:

  $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']);

Ou si vous avez installé le module Entity , essayez:

entity_get_all_property_info('node');

Commandes Drush (l'une d'elles):

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

2

Peut également utiliser la fonction: field_info_field_map ()

Au lieu d'entités de retour descendant vers les champs, il commence à partir du champ et descend vers les entités. Cette seconde est très bien pour voir où vont les champs, tandis que field_info_instances () montre comment les entités sont construites.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.