function hook_delete

Respond to node deletion.

This is a node-type-specific hook, which is invoked only for the node type being affected. See Node API hooks for more information.

Use hook_node_delete() to respond to node deletion of all node types.

This hook is invoked from node_delete_multiple() before hook_node_delete() is invoked and before field_attach_delete() is called.

Note that when this hook is invoked, the changes have not yet been written to the database, because a database transaction is still in progress. The transaction is not finalized until the delete operation is entirely completed and node_delete_multiple() goes out of scope. You should not rely on data in the database at this time as it is not updated yet. You should also note that any write/update database queries executed from this hook are also not committed immediately. Check node_delete_multiple() and db_transaction() for more info.

Parameters

$node: The node that is being deleted.

Related topics

82 functions implement hook_delete()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

actions_delete in includes/actions.inc
Deletes a single action from the database.
block_custom_block_delete in modules/block/block.admin.inc
Form constructor for the custom block deletion form.
block_menu_delete in modules/block/block.module
Implements hook_menu_delete().
block_user_role_delete in modules/block/block.module
Implements hook_user_role_delete().
book_node_delete in modules/book/book.module
Implements hook_node_delete().

... See full list

File

modules/node/node.api.php, line 1063

Code

function hook_delete($node) {
    db_delete('mytable')->condition('nid', $node->nid)
        ->execute();
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.