Description
The wpforms_post_submissions_process_meta
filter runs on the value that gets saved for the custom field (what gets passed to update_post_meta()).
Parameters
- $field_value
- (string) Field value from the form.
- $meta_key
- (string) Custom field meta key.
- $field_id
- (int) Field ID.
- $fields
- (array) Sanitized entry field values/properties.
- $form_data
- (array) Processed form settings/data, prepared to be used later.
Source
wpforms-post-submissions/class-post-submissions.php
More Information
This filter can be used to change the value of a saved field from the Post Submissions Addon.
Examples
Below is an example snippet with this filter that will change the post_meta save to use the UNIX timestamp.
/** * Customize post_meta value during WPForms Post Submissions processing. * * @link https://wpforms.com/developers/wpforms_post_submissions_process_meta/ * * @param string $field_value Field value from the form. * @param string $meta_key Custom field meta key. * @param int $field_id Field ID. * @param array $fields Sanitized entry field values/properties. * @param array $form_data Processed form settings/data, prepared to be used later. * * @return string */ function wpf_post_submission_process_meta( $field_value, $meta_key, $field_id, $fields, $form_data ) { // Only run on my form with ID = 443 if ( absint( $form_data[ 'id' ] ) !== 443 ) { return; } // If the field has a specific meta key and contains a unix time stamp, // use that for the post_meta value. if ( $meta_key === 'some_post_meta_key' && ! empty( $fields[ $field_id ][ 'unix' ] ) ) { $field_value = $fields[ $field_id ][ 'unix' ]; } return $field_value; } add_filter( 'wpforms_post_submissions_process_meta', 'wpf_post_submission_process_meta', 10, 5 );
Remember to replace the meta key in the code above to match whatever meta key you are using as well as the form ID 443
. If you need help in finding your form ID, please review this helpful documentation.
Related
Article Reference: How to Store Checkbox Values as Arrays With Post Submissions