wpcf7_sendinblue_collect_parameters()
Collects parameters for Sendinblue contact data based on submission.
Хуки из функции
Возвращает
Массив
. Sendinblue contact parameters.
Использование
wpcf7_sendinblue_collect_parameters();
Код wpcf7_sendinblue_collect_parameters() wpcf7 sendinblue collect parameters CF7 6.0.6
function wpcf7_sendinblue_collect_parameters() { $params = array(); $submission = WPCF7_Submission::get_instance(); foreach ( (array) $submission->get_posted_data() as $name => $val ) { $name = strtoupper( $name ); if ( 'YOUR-' === substr( $name, 0, 5 ) ) { $name = substr( $name, 5 ); } if ( $val ) { $params += array( $name => $val, ); } } if ( isset( $params['SMS'] ) ) { $sms = trim( implode( ' ', (array) $params['SMS'] ) ); $sms = preg_replace( '/[#*].*$/', '', $sms ); // Remove extension $is_international = false || str_starts_with( $sms, '+' ) || str_starts_with( $sms, '00' ); if ( $is_international ) { $sms = preg_replace( '/^[+0]+/', '', $sms ); } $sms = preg_replace( '/[^0-9]/', '', $sms ); if ( $is_international and 6 < strlen( $sms ) and strlen( $sms ) < 16 ) { $params['SMS'] = '+' . $sms; } else { // Invalid telephone number unset( $params['SMS'] ); } } if ( isset( $params['NAME'] ) ) { $your_name = implode( ' ', (array) $params['NAME'] ); $your_name = explode( ' ', $your_name ); if ( ! isset( $params['LASTNAME'] ) ) { $params['LASTNAME'] = implode( ' ', array_slice( $your_name, 1 ) ); } if ( ! isset( $params['FIRSTNAME'] ) ) { $params['FIRSTNAME'] = implode( ' ', array_slice( $your_name, 0, 1 ) ); } } $params = array_map( function ( $param ) { if ( is_array( $param ) ) { $param = wpcf7_array_flatten( $param ); $param = reset( $param ); } return $param; }, $params ); $params = apply_filters( 'wpcf7_sendinblue_collect_parameters', $params ); return $params; }