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

Descrizione

Il filtro wpforms_post_submissions_post_args viene utilizzato per popolare tutti gli argomenti dell'invio come titolo, tipo di post, ecc. quando si utilizza il componente aggiuntivo Post Submissions di WPForms.

Parametri

$post_args
(array) (Richiesto) Argomenti dall'invio del post come ID categoria, ID tag, ID autore, ecc.
$form_data
array Impostazioni/dati del modulo.
$fields
array Valori/proprietà dei campi di invio sanificati.

Origine

wpforms-post-submissions/class-post-submissions.php

Maggiori Informazioni

wpforms_post_submissions_post_args viene attivato immediatamente quando l'invio viene elaborato per impostare il titolo del post, la categoria, ecc. all'interno del post.

Esempi

Nell'esempio di codice, vedrai che stiamo prima controllando l'ID del modulo per assicurarci che corrisponda al modulo di destinazione. Quindi stiamo controllando un campo specifico (tramite l'ID del campo) per vedere se è vuoto.

Ricorda solo di cambiare l'ID del modulo da 1378 per corrispondere al tuo ID modulo e di cambiare '10' per corrispondere al tuo ID campo.

Se hai bisogno di assistenza su dove trovare gli ID dei tuoi moduli e campi, rivedi questo tutorial.

Vedremo se il menu a discesa corrisponde a FAQ e, in tal caso, lo cambieremo dal tipo di post post a my_faq.

/**
 * Action that fires during form submission.
 *
 * @link   https://wpforms.com/developers/wpforms_post_submissions_post_args/
 *
 * @param  array  $post_args Sanitized entry field. values/properties.
 * @param  array  $form_data Form data and settings.
 * @param  array  $fields    Sanitized entry field values/properties.
 *
 * @return array
 */

function wpf_dev_post_submissions_post_args( $post_args, $form_data, $fields ) {

    // Only run this snippet on the form ID 1378
    if ( absint( $form_data[ 'id' ] ) !== 1378 ) {
        return $fields;
    }
	
    // If the field ID is 10 and the value of that field is equal to FAQ process the snippet
    if ( ! empty( $fields[ '10' ] ) && $fields[ '10' ][ 'value' ] === 'FAQ' ) {
        $post_args[ 'post_type' ] = 'my_faq';
    }

    return $post_args;
}
  
add_filter( 'wpforms_post_submissions_post_args', 'wpf_dev_post_submissions_post_args', 10, 3 );