Limit the number of entries by user role

add_filter( ‘frm_validate_field_entry’, ‘limit_by_user_role’, 10, 3 ); function limit_by_user_role( $errors, $posted_field, $posted_value ) { $field_id = 136; //change 136 to the ID of the hidden field if ( $posted_field->id == $field_id ) { //get all the entries for that role $entries_for_role…Continue reading

Remove Label Column

add_filter( ‘frm_csv_columns’, ‘remove_label_column’, 10, 2 ); function remove_label_column( $headings, $form_id ) { if ( $form_id == 326 ) { //change 326 to your Form ID unset( $headings[‘4002_label’] ); //change 4002 to the field ID using separate values } return $headings;…Continue reading

Disable blacklist check for a single form

add_filter( ‘frm_check_blacklist’, ‘limit_check_blacklist’, 10, 2 ); function limit_check_blacklist($check, $atts){ if ( $atts[‘form_id’] == 25 ) { //replace 25 with the id of the form you would like to disable the blacklist check on. $check = false; } return $check; }Continue reading

Randomize Field Order

add_filter( ‘frm_get_paged_fields’, ‘randomize_form_fields’, 20, 2 ); function randomize_form_fields( $fields, $form_id ){ if ( $form_id == 25 ) { //change 25 to the id of the form to change shuffle( $fields ); } return $fields; }Continue reading

Replace with RTL style

add_filter( ‘frm_add_form_style_class’, ‘add_style_class’, 1 ); function add_style_class( $class ) { $lang = apply_filters( ‘wpml_current_language’, null ); if ( $lang == ‘ar’ ) { // change ar to your language code remove_filter( ‘frm_add_form_style_class’, ‘FrmStylesController::get_form_style_class’, 10, 2 ); $class .= ‘frm_my_style_class frm_rtl’;…Continue reading

Add options to a signature field

<?php add_action(‘frm_field_options_form’, ‘my_field_options_form’, 10, 3); function my_field_options_form($field, $display, $values){ if ( $field[‘type’] != ‘signature’ ) { return; } if ( ! isset( $field[‘label1’] ) ) { $field[‘label1’] = ‘Draw It’; } ?> <tr> <td><label>Signature Options</label></td> <td> <label for=”label1_” class=”howto”>Draw It…Continue reading