Formidable Forms

Formidable Forms

  • Features
  • Pricing
  • Resources
    • Docs & Support
    • Blog
    • Community
  • Solutions
    • Web Applications
    • Calculators
    • Surveys
    • Directories
    • Payments
    • Contact forms
  • Login
  • Get Formidable Forms

frm_to_email

Last Updated: March 22, 2018

Knowledge Base → Extend Formidable Forms → Formidable Hooks - for Developers → Customize the Email Notification → frm_to_email
Heads up!
This article contains PHP code and is intended for developers. We offer this code as a courtesy, but don't provide support for code customizations or 3rd party development.

This hook gives you added control over emails. You may customize it to send emails to specific recipients based on certain field selections or to conditionally stop the email from sending.

Formidable Forms is the best WordPress Form Builder plugin. Get it for free!

Usage

add_filter( 'frm_to_email', 'custom_set_email_value', 10, 4 );

Parameters

  • $recipients (array)
  • $values (array) - contains field objects
  • $form_id (string)
  • $args (array) - include entry object

Examples

Email Routing

The following code may be used to customize email routing based on a selection in your form. Replace 5 with the ID of your form and replace 4933 with the ID of the email notification. Replace 125 with the ID of a radio/dropdown field. Replace Option 1, Option 2, Option 3, Option 4, and Option 5 with the actual options in your dropdown or radio field.

add_filter('frm_to_email', 'custom_set_email_value', 10, 4);
function custom_set_email_value($recipients, $values, $form_id, $args){
    if($form_id == 5 && $args['email_key'] == 4933){ // change 5 to the id of your form and 4933 with the ID of the email
        foreach ( $values as $value ) {
            if ( $value->field_id != 125 ) continue; //change 125 to the id of the drop-down or radio field
            switch ( $value->meta_value ) {
                case 'Option 1':
                    $recipients[] = '[email protected]';
                    break;
                case 'Option 2' or 'Option 3' or 'Option 4': // change these values to the choices in your field
                    $recipients[] = '[email protected]';
                    break;
                case 'Option 5':
                    $recipients[] = '[email protected]';
                    $recipients[] = '[email protected]';
                    break;
                default: //this will be used if none of the other cases occur
                    $recipients[] = '[email protected]';
                    break;
            }
		unset( $field_id, $value );
        }
    }
    return $recipients;
}

Conditionally stop email

Stop the email notification based on the post status. This code will clear the list of email recipients if the status is set to Draft. Note: You need to add a status field to your form for this code to work properly.

add_filter('frm_to_email', 'stop_the_email', 10, 4);
function stop_the_email($recipients, $values, $form_id, $args){
    if ( $form_id == 5 && $args['email_key'] == 123 ) { //change 5 to the id of the form and 123 to the ID of your email notification
	if ( isset( $_POST['item_meta'][30] ) && $_POST['item_meta'][30] == 'Draft' ) { //change 30 to the ID of the status field
  	    $recipients = array();
	}
    }
    return $recipients;
}
  • Usage
  • Parameters
  • Examples
    • Email Routing
    • Conditionally stop email
Categories
×

Categories

  • Installation & Getting Started
  • Account Management
  • Forms
  • Entries
  • Views
  • Styles
  • Importing & Exporting
  • Add-Ons
  • Extend Formidable Forms

Using WordPress and want to get Formidable Forms for free?

Get Formidable Forms Lite Now

You do not have permission to view this form. Maybe you need to log in?

This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

Take on bigger projects Right Now

Get the tools you need to revolutionize your workflow and architect a masterpiece. Build the most advanced WordPress forms and actually use the data you collect in meaningful ways.

Get the most advanced WordPress form plugin and the only form builder with integrated Views.

Get Formidable Forms Now

Resources

  • Community
  • Affiliates
  • Contact
  • Free Online Form Builder

Top Features

  • Application Builder
  • Calculator Forms
  • Surveys & Polls
  • Quiz Maker
  • Form Templates
  • Application Templates
  • Directories
  • Donation Plugin

Company

  • About Us
  • Giving Back
  • Careers
  • Newsletter
  • WP Tasty
  • Nutrifox

Copyright © 2023 Strategy11, LLC. Formidable Forms® is a registered trademark Strategy11, LLC.
Privacy Policy | Terms of Service | Sitemap

Join 300,000+ using Formidable Forms to create form-focused solutions fast. Get Started See User Reviews