Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). UI Patterns (SDC in Drupal UI) 2.0.18 Minor update available for module ui_patterns (2.0.18). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

Hook Post Action

4,998 sites Security covered
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__);
}

Activity

Total releases
3
First release
Nov 2025
Latest release
8 months ago
Releases (12 mo)
3 ▲ from 0
Maintenance
Slowing

Release Timeline

Releases

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