# Property Info für Entity Metadata Wrapper definieren Damit u.a. [[Entity Metadata Wrapper]] korrekt funktioniert, benötigt das Entity Modul Informationen über die möglichen Properties und welche Daten es enthalten kann. Diese Informationen werden über die Funktionen `hook_entity_property_info()` und `hook_entity_property_info_alter()` definiert. Diese beiden Funktionen werden hauptsächlich genutzt, um die Informationen für neue Entities zu definieren, bzw. zu verändern. TODO: Einfaches Beispiel für `hook_entity_property_info()` schreiben. Um diese Informationen für ein ein einzelnes (neues) Feld zu definieren kann dies direkt mit `hook_field_info()` gemacht werden, indem zusätzliche Key in dem Array gesetzt werden. Die möglichen Typen, für Properties sind hier zu finden: [[https://www.drupal.org/node/905580|Data Types]] #### Beispiel für die Definition von Property Info bei einem Feld /** * Implements hook_field_info(). */ function hook_field_info() { return array( 'my_field' => array( 'label' => t('My field'), // ... the normal definitions for a new field. // Add entity property info. 'property_type' => 'text', ), ); } Das Beispiel oben funktioniert für einfache Felder. Bei komplexeren Feldern (die z.B. über mehrere Spalten gehen), muss zusätzlich ein Callback verwendet werden. Eine beispielhafte Implementierung zeigt der Artikel: [[http://www.thecarneyeffect.co.uk/describe-field-properties-make-custom-fields-work-entity-metadata-wrappers|Describe field properties to make custom fields work with Entity Metadata Wrappers]] {{tag>drupal7 entities unfertig}}