Функция проверяет — прикреплено ли поле типа $field_type к бандлу $bundle сущности $entity (все аргументы — строки, не объекты).
function _mymodule_check_bundle_for_field($entity, $bundle, $field_type) { $instances = field_info_instances($entity); $fields = array_keys(field_read_fields(array('type' => $field_type))); foreach ($instances as $instance => $names) { $field_names = array_intersect(array_keys($names), $fields); if (!empty($field_names)) { $bundles[] = $instance; } } return in_array($bundle, $bundles); }
Как заметили в комментах, более правильно после выхода версии 7.22 вызывать
field_info_instances($entity, $bundle);
Сохраню на память.