Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- # POPULATE SELECT FIELD WIH AWARDS TYPES
- add_filter(
- 'forminator_cform_render_fields',
- function( $wrappers, $model_id ) {
- if( $model_id != 263 ){ // SET ID OF THE FORM
- return $wrappers;
- }
- $select_fields_data = array(
- 'select-1' => 'categories',
- );
- foreach ( $wrappers as $wrapper_key => $wrapper ) {
- if ( ! isset( $wrapper[ 'fields' ] ) ) {
- continue;
- }
- if (
- isset( $select_fields_data[ $wrapper[ 'fields' ][ 0 ][ 'element_id' ] ] ) &&
- ! empty( $select_fields_data[ $wrapper[ 'fields' ][ 0 ][ 'element_id' ] ] )
- ) {
- $p_args = array(
- 'post_type' => $select_fields_data[ $wrapper[ 'fields' ][ 0 ][ 'element_id' ] ],
- 'numberposts' => -1,
- 'post__not_in' => array( 2739, 2734 ), // IDs of Awards to be excluded from select
- );
- $posts = get_posts( $p_args );
- if ( ! empty( $posts ) ) {
- $new_options = array();
- $opt_data = array();
- foreach( $posts as $post ) {
- $new_options[] = array(
- 'label' => $post->post_title,
- 'value' => $post->ID,
- 'limit' => '',
- 'key' => forminator_unique_key(),
- );
- $opt_data['options'] = $new_options;
- }
- $select_field = Forminator_API::get_form_field( $model_id, $wrapper['fields'][0]['element_id'], true );
- if( $select_field ){
- if( $select_field['options'][0]['label'] != $opt_data['options'][0]['label'] ){
- Forminator_API::update_form_field( $model_id, $wrapper['fields'][0]['element_id'], $opt_data );
- $wrappers[ $wrapper_key ][ 'fields' ][ 0 ][ 'options' ] = $new_options;
- }
- }
- }
- }
- }
- return $wrappers;
- },
- 10,
- 2
- );
- add_filter(
- 'forminator_replace_form_data',
- function( $content, $data, $fields ) {
- if( $data['form_id'] != 263 ){ // SET ID OF THE FORM
- return $content;
- }
- if ( ! empty( $content ) ) {
- return $content;
- }
- $form_fields = Forminator_API::get_form_fields( $data['form_id'] );
- $data_field = '';
- foreach($data as $key => $value){
- if ( strpos( $key, 'select' ) !== false ) {
- $values = '';
- $field_value = isset( $data[ $key ] ) ? $data[ $key ] : null;
- if ( ! is_null( $field_value ) ) {
- $fields_slugs = wp_list_pluck( $form_fields, 'slug' );
- $field_key = array_search( $key, $fields_slugs, true );
- $field_options = false !== $field_key && ! empty( $form_fields[ $field_key ]->raw['options'] )
- ? wp_list_pluck( $form_fields[ $field_key ]->options, 'label', 'value' )
- : array();
- if ( ! isset( $field_options[ $field_value ] ) && isset( $_POST[ $key ] ) ) {
- return sanitize_text_field( $_POST[ $key ] );
- }
- }
- }
- }
- return $content;
- },
- 10,
- 3
- );
- # END OF THE CODE TO POPULATE SELECT FIELD
- # SET AWARD YEAR FOR NOMINEE
- add_action( 'forminator_post_data_field_post_saved', 'forminator_post_data_field_post_saved_custom_tag', 11, 3 );
- function forminator_post_data_field_post_saved_custom_tag( $post_id, $field, $data ) {
- $award_year_name = '';
- $csfields = $data['post-custom'];
- foreach ( $csfields as $key=>$custom_field ) {
- if ( $custom_field['key'] == 'YEAR' ) {
- $award_year_name = $custom_field['value'];
- }
- }
- if ( $award_year_name !== '' ) {
- $taxonomy_name = 'awards_year'; // taxonomy name for Awards Year
- wp_set_post_terms( $post_id, $award_year_name, $taxonomy_name );
- }
- }
- # END OF AWARD YEAR
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement