Group Fields Data not showing
Support › MB Frontend Submission › Group Fields Data not showing
- This topic has 4 replies, 2 voices, and was last updated 3 years, 2 months ago by
Long Nguyen.
Viewing 5 posts - 1 through 5 (of 5 total)
-
AuthorPosts
-
February 11, 2022 at 4:58 AM #33837
James
ParticipantHi why the ws_getprice_container_type_group fields is not showing under a group field.
// getprice form after submission add_action( 'rwmb_frontend_after_process', function( $config, $post_id ) { if ( 'get-price' === $config['id'] ) { $ws_getprice_from = empty( $_POST['ws_getprice_from'] ) ? null : $_POST['ws_getprice_from']; $ws_getprice_to = empty( $_POST['ws_getprice_to'] ) ? null : $_POST['ws_getprice_to']; $ws_getprice_container_type_group = empty( $group = $_POST['ws_getprice_container_type_group'] ) ? null : $_POST['ws_getprice_container_type_group']; $ws_getprice_container_type_select = $group['ws_getprice_container_type_select']; $to = '[email protected]'; $subject = 'New Inquiry'; $body = '<div class="mail-body" style="color:#ccc;">Your application details: ' . '' . '<div>' . 'From:' . $ws_getprice_from . '</div>' . '<div>' . 'To:' . $ws_getprice_to . '</div>' . 'Container Type:' . $ws_getprice_container_type_select . '</div>'; $headers = array( 'Content-Type: text/html; charset=UTF-8' ); wp_mail( $to, $subject, $body, $headers ); wp_safe_redirect( 'thank-you' ); die; } }, 10, 2 );
February 12, 2022 at 2:43 PM #33863Long Nguyen
ModeratorHi Kirb,
Can you please share the code that creates custom fields on your site? I will help you to check the issue.
February 12, 2022 at 2:52 PM #33865James
ParticipantHi, Long. Here it is. Can you help me display all the custom fields in the email? Including the group and its items. Thanks in advanced.
<?php add_filter( 'rwmb_meta_boxes', 'your_prefix_function_name' ); function your_prefix_function_name( $meta_boxes ) { $prefix = ''; $meta_boxes[] = [ 'title' => __( 'Get Price', 'your-text-domain' ), 'id' => 'get-price', 'post_types' => ['page', 'post'], 'style' => 'seamless', 'class' => 'getprice-form', 'fields' => [ [ 'type' => 'heading', 'name' => __( 'Route', 'your-text-domain' ), ], [ 'name' => __( 'From', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_from', 'type' => 'select_advanced', 'options' => [ 'alesund' => __( 'Ålesund (Norway)', 'your-text-domain' ), 'averoy' => __( 'Averøy (Norway)', 'your-text-domain' ), 'bremerhaven' => __( 'Bremerhaven (Germany)', 'your-text-domain' ), ], 'placeholder' => __( 'Port & Place', 'your-text-domain' ), 'required' => true, 'columns' => 5, 'class' => 'ws-getprice-from', ], [ 'id' => $prefix . 'custom_html_sann48gtpha', 'type' => 'custom_html', 'std' => '<button type="button" class="from-to__flip" tabindex="-1" aria-label="Flip from and to"><svg width="25px" height="20px" viewBox="0 0 25 20" class="icon icon--flip"><g><line class="icon__line" x1="14.2" y1="6.5" x2="2.2" y2="6.5"></line><polyline class="icon__line" points="6.5,12 1,6.5 6.5,1"></polyline><line class="icon__line" x1="10.6" y1="13.5" x2="22.6" y2="13.5"></line><polyline class="icon__line" points="18.4,8 23.9,13.5 18.4,19"></polyline></g></svg></button>', 'columns' => 2, ], [ 'name' => __( 'To', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_to', 'type' => 'select_advanced', 'options' => [ 'alesund' => __( 'Ålesund (Norway)', 'your-text-domain' ), 'averoy' => __( 'Averøy (Norway)', 'your-text-domain' ), 'bremerhaven' => __( 'Bremerhaven (Germany)', 'your-text-domain' ), ], 'placeholder' => __( 'Port & Place', 'your-text-domain' ), 'required' => true, 'columns' => 5, 'class' => 'ws-getprice-to', ], [ 'name' => __( 'Containers', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_container_type_group', 'type' => 'group', 'clone' => true, 'add_button' => __( 'Add container type', 'your-text-domain' ), 'fields' => [ [ 'name' => __( 'Container Type', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_container_type_select', 'type' => 'select_advanced', 'options' => [ 45 => __( '45\' dry container', 'your-text-domain' ), 40 => __( '40\' dry container', 'your-text-domain' ), 20 => __( '20\' dry container', 'your-text-domain' ), '45-reefer' => __( '45\' reefer (refrigiated)', 'your-text-domain' ), '20-feet-flat-rack' => __( '20\' flat rack', 'your-text-domain' ), '40-feet-flat-rack' => __( '40\' flat rack', 'your-text-domain' ), '40-feet-flat-rack-high' => __( '40\' flat rack high cube', 'your-text-domain' ), ], 'placeholder' => __( 'Select container type', 'your-text-domain' ), 'columns' => 8, 'class' => 'ws-getprice-container-group', ], [ 'name' => __( 'Number', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_quantity', 'type' => 'number', 'columns' => 4, 'class' => 'ws-getprice-quantity', ], [ 'id' => $prefix . 'ws_getprice_ticks', 'type' => 'checkbox_list', 'options' => [ 'empty' => __( 'empty', 'your-text-domain' ), 'dangerous-goods' => __( 'Dangerous goods', 'your-text-domain' ), ], 'inline' => true, 'class' => 'ws-getprice-ticks', ], [ 'name' => __( 'UN Number', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_un_number', 'type' => 'text', 'placeholder' => __( 'UN0000', 'your-text-domain' ), 'tooltip' => [ 'icon' => 'dashicons-info', 'position' => 'top', 'content' => 'Please provide the UN number', ], 'class' => 'ws-getprice-un-number', 'hidden' => [ 'when' => [['ws_getprice_ticks', 'not contains', 'dangerous-goods']], 'relation' => 'or', ], ], ], ], [ 'name' => __( 'Your Email', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_email', 'type' => 'email', 'desc' => __( 'Your e-mail will only be used for this purpose. Read our privacy policy for how we take care of your data.', 'your-text-domain' ), 'placeholder' => __( '[email protected]', 'your-text-domain' ), 'size' => 4, 'required' => true, ], [ 'name' => __( 'Additional Information (Optional)', 'your-text-domain' ), 'id' => $prefix . 'ws_getprice_additional_information', 'type' => 'textarea', 'class' => 'ws-getprice-additional-information', ], ], 'validation' => [ 'rules' => [ $prefix . 'ws_getprice_from' => [ 'required' => true, ], $prefix . 'ws_getprice_to' => [ 'required' => true, ], ], 'messages' => [ $prefix . 'ws_getprice_from' => [ 'required' => 'Origin is required', ], $prefix . 'ws_getprice_to' => [ 'required' => 'Destination is required', ], ], ], ]; return $meta_boxes; }
February 14, 2022 at 7:46 AM #33884James
ParticipantHope you can help me with this.
February 14, 2022 at 11:30 AM #33885Long Nguyen
ModeratorHi Kirb,
The
group
field is a cloneable group, you need to create a for loop to iterate through the array of items. Or access a specific group item via the key. Like this$ws_getprice_container_type_group = empty( $group = $_POST['ws_getprice_container_type_group'] ) ? null : $_POST['ws_getprice_container_type_group']; // access group item via the array key $ws_getprice_container_type_select = $group[0]['ws_getprice_container_type_select']; // or use the loop foreach ( $group as $group_item ) { echo $group_item['ws_getprice_container_type_select']; }
-
AuthorPosts
Viewing 5 posts - 1 through 5 (of 5 total)
- You must be logged in to reply to this topic.