The admin_action_{$action} WordPress PHP action fires when an ‘action’ request variable is sent. The dynamic portion of the hook name, $action
, refers to the action derived from the GET or POST request.
Usage
add_action('admin_action_{$action}', 'your_custom_function'); function your_custom_function() { // your custom code here }
Parameters
$action
(string): The action derived from the GET or POST request.
More information
See WordPress Developer Resources: admin_action_{$action}
Examples
Redirect users after a custom action
This example redirects users to a custom page after performing a custom action.
add_action('admin_action_your_custom_action', 'redirect_after_custom_action'); function redirect_after_custom_action() { // Redirect to custom page wp_redirect(admin_url('edit.php?page=your_custom_page')); exit; }
Save custom data on action
This example saves custom data when a custom action is performed.
add_action('admin_action_save_custom_data', 'save_custom_data_function'); function save_custom_data_function() { // Save custom data to the database update_option('your_custom_option', 'your_custom_value'); }
Delete a custom post type
This example deletes a custom post type when a custom action is performed.
add_action('admin_action_delete_custom_post_type', 'delete_custom_post_type_function'); function delete_custom_post_type_function() { // Get the custom post ID $post_id = intval($_GET['post_id']); // Delete the custom post wp_delete_post($post_id, true); }
Send email on custom action
This example sends an email when a custom action is performed.
add_action('admin_action_send_custom_email', 'send_custom_email_function'); function send_custom_email_function() { // Send an email to the specified email address wp_mail('[email protected]', 'Custom Email Subject', 'Custom Email Message'); }
Update user meta on custom action
This example updates user meta when a custom action is performed.
add_action('admin_action_update_user_meta', 'update_user_meta_function'); function update_user_meta_function() { // Get the user ID $user_id = intval($_GET['user_id']); // Update user meta update_user_meta($user_id, 'your_custom_meta_key', 'your_custom_meta_value'); }