Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Usage Milestone: Google Analytics Module google_analytics crossed 1,000 active installs. Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Release: GraphQL Compose Codegen 1.1.2 Minor update available for module graphql_compose_codegen (1.1.2). Release: Mapy.com 1.1.3 Minor update available for module mapycom (1.1.3). Release: Ckeditor5 entity browser 3.0.3 Minor update available for module ckeditor5_entity_browser (3.0.3). Release: Ckeditor5 entity browser 3.0.1 Minor update available for module ckeditor5_entity_browser (3.0.1). Release: Ckeditor5 entity browser 3.0.2 Minor update available for module ckeditor5_entity_browser (3.0.2). Release: Teamleader Integration 4.0.2 Minor update available for module teamleader (4.0.2). Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Hook Post Action

4,836 sites Security covered Drupal 8–10 · not 11
View on drupal.org

This module provides developers with new hooks that are triggered after an entity or node is saved, inserted, updated, or deleted. This allows other modules to perform actions in response to these database changes.

You don't need this module unless you're either a developer or another module you're using depends on it.

Currently Drupal core does not offer any hook to do actions after a node/entity is insered/updated/deleted in the database. So this module introduces several new Drupal hooks to overcome this limitation:

  • hook_entity_postsave
  • hook_entity_postinsert
  • hook_entity_postupdate
  • hook_entity_postdelete
  • hook_node_postsave
  • hook_node_postinsert
  • hook_node_postupdate
  • hook_node_postdelete

Installation

Install and enable the module as usual.

Usage

Please read the hook_post_action.api file.

Also if you want to quickly see it working, you can enable the bundled module hook_post_action_example, add/delete/update some content and visit the logs at /admin/reports/dblog. You'll see log messages for each hook that was fired.

WARNING: The _postsave, _postinsert and _postupdate hooks are also called when the entity/node is deleted, as there is no way to find out whether the entity/node is actually saved/inserted/updated. However, the module does only call the delete hooks when the entity/node is actually deleted from database.

A simple example

<?php
/**
 * Gets called after a node has been deleted from database.
 *
 * @param $node
 *   A node object
 *
 * @see hook_node_postsave()
 * @see hook_node_postinsert()
 * @see hook_node_postupdate()
 * @see hook_node_postdelete()
 */
function hook_post_action_example_node_postdelete($node) {
  watchdog('hook_post_action_test', "The deleted node {$node->type} id is {$node->nid} from " . __FUNCTION__);
}

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

1 tracked project depends on this one

Activity

Tracked releases
3
Tracked since
Nov 2025
Latest release
9 months ago
Releases (12 mo)
3 ▲ from 0
Maintenance
Slowing

Release Timeline

Releases

Version Type Core Release date
8.x-1.3 Stable 8–10 Nov 11, 2025
2.0.0 Stable 8–11 Nov 11, 2025
2.0.x-dev Dev 8–11 Nov 11, 2025