Filters confirmation message output site-wide.


(string) (Required) Confirmation message, including processed Smart Tags.
(array) (Required) Processed form settings/data, prepared to be used later.
(array) (Required) Sanitized field data.
(int) (Required) Entry id.



More Information

The filter is applied to all forms set to display a confirmation message. It can be used to change or replace the confirmation message that’s displayed, overriding the message contents set within the form builder.


The example shown below will capture the user name that filled out the form and then give a more personalized message for the confirmation message.

Just remember to change the form ID from 25 to match the specific form ID you’re wanting to run your code on. Removing that check would run for all forms.

 * Filters confirmation message output site-wide.
 * @link
 * @param  string   $message     Confirmation message including Smart Tags.
 * @param  array    $form_data   Form data and settings.
 * @param  array    $fields      Sanitized field data.
 * @param  int      $entry_id    Entry ID.
 * @return string

function wpf_dev_frontend_confirmation_message( $message, $form_data, $fields, $entry_id ) {
    // Only run on my form with ID = 25
    if ( absint( $form_data[ 'id' ] ) !== 25 ) {
            return $message;

    // also it is possible to access the first, middle, and the last name as follows inplace of [ 'value' ]
    //  $contact_name = $fields[ '0' ][ 'first' ]; - this will pass in the first name
    //  $contact_name = $fields[ '0' ][ 'last' ]; - this will pass in the last name
    //  $contact_name = $fields[ '0' ][ 'middle' ]; - this will pass in the middle name in the format First Middle Last
    // Get the name field ID '0' to set the name for the message
    $contact_name = $fields[ '0' ][ 'value' ];
    // Add the name to the message
    $message = __('Thanks ' . $contact_name .  ' we will be in touch!', 'plugin-domain');
    return $message;
add_filter( 'wpforms_frontend_confirmation_message', 'wpf_dev_frontend_confirmation_message', 10, 4 );

Reference Articles