field_delete_instance

Versions
7
field_delete_instance($instance)

Mark a field instance for deletion, including all data associated with it.

Parameters

$instance An instance structure.

Related topics

▾ 4 functions call field_delete_instance()

field_attach_delete_bundle in modules/field/field.attach.inc
Notify field.module the a bundle was deleted.
field_delete_field in modules/field/field.crud.inc
Mark a field for deletion, including all its instances and all data associated with it.
field_ui_field_delete_form_submit in modules/field_ui/field_ui.admin.inc
Remove a field from a content type.
node_configure_fields in modules/node/node.module
Manage the field(s) for a node type.

Code

modules/field/field.crud.inc, line 856

<?php
function field_delete_instance($instance) {
  // Mark the field instance for deletion.
  db_update('field_config_instance')
    ->fields(array('deleted' => 1))
    ->condition('field_name', $instance['field_name'])
    ->condition('object_type', $instance['object_type'])
    ->condition('bundle', $instance['bundle'])
    ->execute();

  // Mark instance data for deletion.
  $field = field_info_field($instance['field_name']);
  module_invoke($field['storage']['module'], 'field_storage_delete_instance', $instance);

  // Clear the cache.
  field_cache_clear();

  module_invoke_all('field_delete_instance', $instance);
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.