namespace WPForms\Providers\Provider;
* Class Process handles entries processing using the provider settings and configuration.
* Get the Core loader class of a provider.
* Submitted form content.
* Form data and settings.
protected $form_data = [];
* @param Core $core Provider core class.
public function __construct( Core $core ) {
* Receive all wpforms_process_complete params and do the actual processing.
* @param array $fields Array of form fields.
* @param array $entry Submitted form content.
* @param array $form_data Form data and settings.
* @param int $entry_id ID of a saved entry.
abstract public function process( $fields, $entry, $form_data, $entry_id );
* Process conditional logic for a connection.
* @param array $fields Array of form fields.
* @param array $form_data Form data and settings.
* @param array $connection All connection data.
protected function process_conditionals( $fields, $form_data, $connection ) {
empty( $connection['conditional_logic'] ) ||
empty( $connection['conditionals'] ) ||
! function_exists( 'wpforms_conditional_logic' )
if ( ! wpforms()->is_pro() ) {
$process = wpforms_conditional_logic()->process( $fields, $form_data, $connection['conditionals'] );
! empty( $connection['conditional_type'] ) &&
$connection['conditional_type'] === 'stop'
* Get provider options, saved on Settings > Integrations page.
protected function get_options() {
return wpforms_get_providers_options( $this->core->slug );