Wpf_Tokens::wpf_possible_tokens( array $tokens = array(), array $args = array() )
Possible tokens.
Contents
Parameters Parameters
- $tokens
-
(Optional)
Default value: array()
- $args
-
(Optional)
Default value: array()
Return Return
(array)
Source Source
File: src/integrations/wpforms/tokens/wpf-tokens.php
function wpf_possible_tokens( $tokens = array(), $args = array() ) { $form_id = $args['value']; $trigger_integration = $args['integration']; $trigger_meta = $args['meta']; $form_ids = array(); $wpforms = new WPForms_Form_Handler(); if ( ! empty( $form_id ) && 0 !== $form_id && is_numeric( $form_id ) ) { $form = $wpforms->get( $form_id ); if ( $form ) { $form_ids[] = $form->ID; } } if ( empty( $form_ids ) ) { $forms = $wpforms->get( '', array( 'orderby' => 'title' ) ); if ( ! empty( $forms ) ) { foreach ( $forms as $form ) { $form_ids[] = $form->ID; } } } if ( ! empty( $form_ids ) ) { foreach ( $form_ids as $form_id ) { $fields = array(); $form = $wpforms->get( $form_id ); $meta = wpforms_decode( $form->post_content ); if ( is_array( $meta['fields'] ) ) { foreach ( $meta['fields'] as $field ) { $input_id = $field['id']; $input_title = $field['label']; $token_id = "$form_id|$input_id"; $fields[] = [ 'tokenId' => $token_id, 'tokenName' => $input_title, 'tokenType' => $field['type'], 'tokenIdentifier' => $trigger_meta, ]; } } $tokens = array_merge( $tokens, $fields ); } } return $tokens; }
Expand full source code Collapse full source code View on Github