Skip to content

Instantly share code, notes, and snippets.

@Shelob9
Last active March 20, 2021 15:45
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Shelob9/8c3e36184a947359e2873d39a411f0f5 to your computer and use it in GitHub Desktop.
Save Shelob9/8c3e36184a947359e2873d39a411f0f5 to your computer and use it in GitHub Desktop.
Examples of how to use the Caldera Forms filter caldera_forms_field_attributes to modify Caldera Forms input elements. See: https://calderaforms.com/doc/caldera_forms_field_attributes/
<?php
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'button' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'data-form-id' ] = $form[ 'ID' ];
}
return $attrs;
}, 20, 3 );
<?php
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'text' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'class' ] .= ' my-special-class';
}
return $attrs;
}, 20, 3 );
<?php
/**
* Set all Caldera Forms number fields' max value to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'number' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'max' ] = 75;
}
return $attrs;
}, 20, 3 );
/**
* Set the Caldera Forms number field with the ID of fld_456's max value to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'fld_456' === $field[ 'ID' ] && 'number' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'max' ] = 75;
}
return $attrs;
}, 20, 3 );
/**
* Set all Caldera Forms number fields that are in the form with the ID cf_12324's max value to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'cf_12324' === $form[ 'ID' ] && 'number' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'max' ] = 75;
}
return $attrs;
}, 20, 3 );
<?php
/**
* Set all Caldera Forms paragraph fields' maxlength to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'paragraph' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'maxlength' ] = 75;
}
return $attrs;
}, 20, 3 );
/**
* Set the Caldera Forms number field with the ID of fld_456's maxlength to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'fld_456' === $field[ 'ID' ] && 'paragraph' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'maxlength' ] = 75;
}
return $attrs;
}, 20, 3 );
/**
* Set all Caldera Forms paragraph fields that are in the form with the ID cf_12324's maxlength to 75
*/
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'cf_12324' === $form[ 'ID' ] && 'paragraph' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'maxlength' ] = 75;
}
return $attrs;
}, 20, 3 );
<?php
//Disable saturday and sunday as options for date picker fields
//see: http://bootstrap-datepicker.readthedocs.io/en/latest/options.html?highlight=disable#daysofweekdisabled
add_filter( 'caldera_forms_field_attributes', function( $attrs, $field, $form ){
if( 'date_picker' === Caldera_Forms_Field_Util::get_type( $field, $form ) ){
$attrs[ 'data-date-days-of-week-disabled' ] = '06';
}
return $attrs;
}, 20, 3 );
@StonehengeCreations
Copy link

I am sorry, but those are still days and not dates.
I meant blocking December 25th, for example. I would have liked to plan ahead....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment