function field_delete_field
field_delete_field($field_name)
Marks a field and its instances and data for deletion.
Parameters
$field_name: The field name to delete.
Related topics
File
- modules/field/field.crud.inc, line 411
- Field CRUD API, handling field and field instance creation and deletion.
Code
function field_delete_field($field_name) { // Delete all non-deleted instances. $field = field_info_field($field_name); if (isset($field['bundles'])) { foreach ($field['bundles'] as $entity_type => $bundles) { foreach ($bundles as $bundle) { $instance = field_info_instance($entity_type, $field_name, $bundle); field_delete_instance($instance, FALSE); } } } // Mark field data for deletion. module_invoke($field['storage']['module'], 'field_storage_delete_field', $field); // Mark the field for deletion. db_update('field_config') ->fields(array('deleted' => 1)) ->condition('field_name', $field_name) ->execute(); // Clear the cache. field_cache_clear(TRUE); module_invoke_all('field_delete_field', $field); }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!field!field.crud.inc/function/field_delete_field/7.x