Choose field for entry name

add_filter(‘frm_pre_create_entry’, ‘frm_choose_field_entry_name’); function frm_choose_field_entry_name( $values ) { $target_form_id = 781; // change 781 to your form ID if ( $target_form_id === (int) $values[‘form_id’] ) { $target_field_id = 4529; // change 4529 to the field that you want to use for…Continue reading

Set a custom enctype for a specific form

add_filter( ‘frm_form_enctype’, ‘custom_form_enctype’, 10, 2 ); function custom_form_enctype( $enctype, $form ) { $target_form_id = 832; // change 832 to your form ID. if ( $target_form_id === (int) $form->id ) { $enctype = ”; } return $enctype; }Continue reading

Remove spam bot error when there is no IP

add_filter( ‘frm_validate_entry’, ‘remove_spam_error’ ); function remove_spam_error( $errors ) { if ( ! array_key_exists( ‘spam’, $errors ) || FrmAppHelper::get_ip_address() ) { return $errors; } if ( __( ‘Your entry appears to be spam!’, ‘formidable’ ) === $errors[‘spam’] ) { unset( $errors[‘spam’]…Continue reading

Show item meta by field name in API result

add_filter(‘frm_formatted_entry_values_content’, ‘show_field_name_in_api_result’, 10, 2); function show_field_name_in_api_result( $content, $args ) { $entry_id = 58191; // change 58191 to your entry ID if ( $entry_id !== (int) $args[‘entry’]->id || ! is_array( $content ) || ‘array’ !== $args[‘format’] ) { return $content; }…Continue reading

Show the API response

add_action( ‘frmapi_post_response’, ‘frm_get_api_response’, 10, 3 ); function frm_get_api_response( $response, $entry, $form_action ) { $status = wp_remote_retrieve_response_code( $response ); if ( $status == 200 ) { add_filter(‘frm_main_feedback’, ‘frm_add_200_to_message’ ); } else { add_filter(‘frm_main_feedback’, ‘frm_add_500_to_message’ ); } } function frm_add_200_to_message( $message )…Continue reading

Adjust values displayed in cart for specific field types

add_filter( ‘wc_fp_cart_item_data’, ‘modify_frm_woo_display_for_number_fields’, 10, 2 ); function modify_frm_woo_display_for_number_fields( $values, $args ) { if ( $args[‘field’]->type ==”number”) { $end_position = strpos( $values[‘display’], ‘ (‘ ); $values[‘display’] = substr( $values[‘display’], 0, $end_position ); } return $values; }Continue reading

Add custom formatter class for email

add_filter( ‘frm_entry_formatter_class’, ‘use_custom_formatter_class’, 10, 2 ); function use_custom_formatter_class( $class, $atts ) { if ( ‘custom’ === $atts[‘format’] ) { return ‘CustomEntryFormatter’; } return $class; } class CustomEntryFormatter extends FrmEntryFormatter { public function __construct( $atts ) { parent::__construct( $atts ); $this->format…Continue reading

Add unique validation when saving drafts

add_filter(‘frm_validate_entry’, ‘validate_unique_field’, 10, 2 ); function validate_unique_field( $errors, $values ) { if ( ! FrmProFormsHelper::saving_draft() ) { return $errors; } $field_id = 795; // change this to the ID of the unique field if ( ! isset( $values[‘item_meta’][ $field_id ]…Continue reading

Basic example

add_filter(‘frm_order_lookup_options’, ‘frm_set_custom_lookup_order’, 20, 2); function frm_set_custom_lookup_order( $values, $order ) { if ( $order == ‘ascending’ ) { sort( $values ); } return $values; }Continue reading