Attenzione!

Questo articolo contiene codice PHP ed è destinato agli sviluppatori. Offriamo questo codice come cortesia, ma non forniamo supporto per personalizzazioni del codice o sviluppo di terze parti.

Per ulteriore assistenza, consulta il tutorial di WPBeginner su come aggiungere codice personalizzato.

Chiudi

Come inviare l'ID della voce tramite webhook

Introduzione

Vuoi trasmettere l'ID dell'invio tramite il componente aggiuntivo Webhooks? L'ID dell'invio, assegnato una volta inviato il modulo, svolge un ruolo fondamentale nel collegare le tue voci WPForms con un CRM esterno per il controllo incrociato. In questo tutorial, ti guideremo attraverso il processo utilizzando un semplice snippet PHP.

Creazione del modulo

Iniziamo creando un modulo e aggiungendo i campi necessari. Se non sei sicuro su come creare un modulo, puoi fare riferimento a questa documentazione per una guida.

crea il modulo e aggiungi i tuoi campi.

Configurazione del webhook

Per inviare l'ID dell'invio tramite webhook, dobbiamo iniziare abilitando il componente aggiuntivo Webhooks. Se hai bisogno di assistenza per configurare il componente aggiuntivo Webhooks, dai un'occhiata a questo articolo.

Per attivare il componente aggiuntivo, vai al generatore di moduli, fai clic su Impostazioni e quindi fai clic su Abilita Webhooks. Sarai in grado di inserire il tuo URL webhook e mappare i campi del modulo al Corpo della richiesta, specificando le informazioni che desideri includere nel webhook.

mappa i tuoi campi del modulo ai nomi delle tue variabili e inserisci l'URL del webhook.

Ai fini di questo tutorial, stiamo utilizzando Webhook.site per verificare che le nostre informazioni vengano inviate tramite il nostro webhook. Quando configuri il tuo webhook, utilizzerai l'URL del webhook della fonte esterna a cui stai inviando e assegnerai le tue variabili. È importante ricordare che ogni fonte esterna che accetta webhook in entrata potrebbe avere modi diversi di impostare le variabili per inviare le informazioni. Dovrai ricercare questa fonte esterna per assicurarti di non dover creare manualmente le tue variabili all'interno di quella fonte per assicurarti che i nomi delle variabili corrispondano a quelli che stai assegnando nel generatore di moduli.

Aggiunta dello snippet

Successivamente, è ora di copiare lo snippet sul nostro sito.

Per qualsiasi assistenza su come e dove aggiungere snippet al tuo sito, consulta questo tutorial.

/**
 * Send the entry id through webhooks request.
 *
 * @link https://wpforms.com/developers/how-to-send-the-entry-id-through-webhooks/
 */

function wpf_dev_webhooks_process_delivery_request_options( $options, $webhook_data, $fields, $form_data, $entry_id ) {
    
	// Optional, you can limit to specific forms. Below, we restrict output to
    // form #1899.
    if ( absint( $form_data[ 'id' ] ) !== 1899 ) {
        return $options;
    }
	
	$body = ! is_array( $options[ 'body' ] ) ? json_decode( $options[ 'body' ], true ) : $options[ 'body' ];
	
	// Create a new entry and assign the entry_id
	$body[ 'entry_id' ] = $entry_id;
	
	// Format request data.
	if ( !empty( $options[ 'method' ] ) && $options[ 'method' ] !== 'GET' && $webhook_data[ 'format' ] === 'json' ) {
		
		// Encode request body.
		$options[ 'body' ] = wp_json_encode( $body );
	}
	
	return $options;
}

add_filter( 'wpforms_webhooks_process_delivery_request_options', 'wpf_dev_webhooks_process_delivery_request_options', 100, 5);

Con questo snippet, aggiungeremo una variabile aggiuntiva al webhook chiamata entry_id e assegneremo questo numero ID creato da WPForms quando il modulo viene inviato, ma solo per l'ID modulo 1899. Dovrai aggiornare questo numero ID modulo per corrispondere al tuo. Se non sei sicuro di dove trovare il tuo numero ID modulo, ti preghiamo di consultare questo tutorial.

Ora, quando vedrai le informazioni inviate dal webhook, noterai non solo i nomi dei tuoi campi mappati, ma anche l'ID dell'invio.

ora puoi inviare l'ID dell'invio tramite webhook utilizzando questo snippet

E questo è tutto! Ora puoi passare l'ID dell'invio tramite il tuo webhook. Desideri anche inviare le informazioni di geolocalizzazione nel webhook? Dai un'occhiata al nostro articolo su Come inviare la geolocalizzazione tramite Webhooks.