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

wpforms_frontend_output si attiva prima che un modulo venga visualizzato nel frontend del sito e all'interno del contenitore del modulo HTML. Si attiverà solo se il modulo esiste e contiene campi.

Parametri

$form_data
(array) Impostazioni/dati del modulo elaborati, preparati per l'uso successivo.
$form
(WP_Post) Tipo di post del modulo.

Origine

wpforms/src/Frontend/Frontend.php

Maggiori Informazioni

Mentre wpforms_frontend_output si attiva solo per moduli validi e non vuoti, viene eseguito all'inizio del processo di rendering dell'output. Tuttavia, ciò che inserisci con questa azione verrà visualizzato all'interno del contenitore del modulo HTML form.

Un'azione alternativa da considerare è wpforms_frontend_output_before, poiché funziona in modo simile, tranne per il fatto che sarà all'esterno del contenitore del modulo HTML.

Esempi

Nel nostro esempio, abbiamo un modulo che verrà disattivato il giorno di Natale. Vogliamo visualizzare un messaggio sopra il modulo che calcoli la data odierna meno il giorno di Natale e fornisca all'utente un conteggio di quanti giorni rimangono per inviare il modulo.

/**
 * Output something before your form(s).
 * 
 * @link  https://wpforms.com/developers/wpforms_frontend_output/
 *
 * @param array   $form_data Form data and settings.
 * @param object  $form      Form post type.
 */

function wpf_dev_frontend_output( $form_data, $form ) {

    // Optional, you can limit to specific forms. Below, we restrict output to
    // form #898.
    if ( absint( $form_data[ 'id' ] ) !== 898 ) {
    return;
    }

	// Set the PHP timezone
	date_default_timezone_set( 'America/New_York' );

	// Set the variable to Christmas day
	$christmasDay = strtotime( 'December 25' );

	// Get the current date
	$time = time();

	// Calculate how many days from today's date to Christmas day	
	$days = ceil(($christmasDay - $time)/60/60/24);

	echo '<div class="countdown_wrapper"> <p>' . __( 'This contest closes on <strong>12/25/2024</strong>, enter now! There are only <strong>', 'text-domain' ) . $days . __( '</strong> days left to enter!', 'text-domain' ) . '</p></div>';
	
}

add_action( 'wpforms_frontend_output', 'wpf_dev_frontend_output', 10, 2 );

Articoli di riferimento

Come visualizzare il numero rimanente del limite di voci