The gform_post_form_restored Gravity Forms action is triggered after a form is restored from the trash, allowing you to perform additional actions.
Usage
add_action('gform_post_form_restored', 'my_function', 10);
Parameters
$form_id
(int): The ID of the form being restored.
More information
See Gravity Forms Docs: gform_post_form_restored
This action hook is located in forms_model.php
.
Examples
Send an email notification when a form is restored
Notify the admin by email when a form is restored from the trash.
add_action('gform_post_form_restored', 'send_email_on_form_restored', 10); function send_email_on_form_restored($form_id) { // Email recipient $to = '[email protected]'; // Email subject $subject = 'Form Restored'; // Email body $message = "Form with ID {$form_id} has been restored from the trash."; // Send the email wp_mail($to, $subject, $message); }
Add a log entry when a form is restored
Log a message to a custom log file when a form is restored.
add_action('gform_post_form_restored', 'log_form_restored', 10); function log_form_restored($form_id) { // Log file path $log_file = WP_CONTENT_DIR . '/my_custom_logs/form_restored.log'; // Log message $message = "Form with ID {$form_id} has been restored at " . date('Y-m-d H:i:s') . "\n"; // Append the message to the log file file_put_contents($log_file, $message, FILE_APPEND); }
Update form settings after form restoration
Update the form settings when a form is restored from the trash.
add_action('gform_post_form_restored', 'update_form_settings_on_restore', 10); function update_form_settings_on_restore($form_id) { // Get the form object $form = GFAPI::get_form($form_id); // Update form settings $form['isTrashed'] = false; // Save the updated form GFAPI::update_form($form); }
Add a post when a form is restored
Create a post in WordPress when a form is restored from the trash.
add_action('gform_post_form_restored', 'add_post_on_form_restored', 10); function add_post_on_form_restored($form_id) { // Post data $post_data = array( 'post_title' => 'Form Restored: ' . $form_id, 'post_content' => 'A form with ID ' . $form_id . ' has been restored.', 'post_status' => 'publish', 'post_type' => 'post', ); // Insert the post wp_insert_post($post_data); }