Developing WordPress site for client or your own site?
Then you should know the basic workflow of Post/Page creation hooks. Okay! Let’s get started with the hooks.
What is hooks?
Hooks are just a functions, which will help us to do some actions or tasks when something is happen. Say for example, we can trigger an email when a new post/page is published or updated or deleted.
Post and Page create/update/delete hooks
- wp_insert_post_data
- save_post_{post_type}
- save_post
- wp_insert_post
- pre_post_update
- post_updated
- publish_post
- publish_page
- publish_future_post
- updated_postmeta
- wp_trash_post
- untrash_post
- before_delete_post
- delete_post
- deleted_post
wp_insert_post_data
wp_insert_post_data
is a filter hook, which will run before the post/page is being saved into the database. Here we can modify the post/page data if needed.
save_post_{post_type}
save_post_{post_type}
action runs after the post/page has been saved into the database.
save_post
save_post
action is called right after the post/page has been saved on the database. It can be a new post/page save or existing post/page update. save_post
action will be called with post ID, post object and a boolean value for update or new post.
wp_insert_post
wp_insert_post
action is called after the post/page has been saved or updated. We can able to make it run only for the new post using the $update
parameter.
pre_post_update
pre_post_update
action runs just before a post or page is updated. Action function called with post or page ID.
post_updated
post_updated
action runs after a post or page is updated. Action function arguments: post or page ID, WP_Post object of the post before the update and after the update.
publish_post
publish_post
action runs when a post is published, or if it is edited and its status is changed to “published”. Action function arguments: post ID, post object.
publish_page
publish_page
action runs when a page is published, or if it is edited and its status is changed to “published”. Action function arguments: post ID, post object.
publish_future_post
publish_future_post
action runs when a future post or page is published. Action function arguments: post ID.
updated_postmeta
updated_postmeta
action runs when a metadata has been updated.
wp_trash_post
wp_trash_post
action runs when a post or page is about to be trashed. Action function arguments: post or page ID.
untrash_post
untrash_post
action runs just before undeletion, when a post or page is restored. Action function arguments: post or page ID.
before_delete_post
before_delete_post
action runs when a post or page is about to be deleted. Comments, attachments and metadata are still available. Action function arguments: post or page ID.
delete_post
delete_post
action runs when a post or page is about to be deleted. Comments, attachments and metadata are already deleted. Action function arguments: post or page ID.
deleted_post
deleted_post
action runs when a post or page is deleted.