Riassunto AI
Descrizione
L'azione wpforms_frontend_output_before viene eseguita prima che un modulo venga visualizzato sul front-end del sito, 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) Oggetto del tipo post del modulo.
Origine
wpforms/src/Frontend/Frontend.php
Maggiori Informazioni
Mentre wpforms_frontend_output_before viene eseguita solo per moduli validi e non vuoti, viene eseguita all'inizio del processo di rendering dell'output.
In alcuni casi, l'azione potrebbe essere eseguita ma il modulo non verrà visualizzato, ad esempio quando si visualizza un messaggio di conferma del modulo o si attiva il filtro wpforms_frontend_load.
Un'azione alternativa da considerare è wpforms_frontend_output_after, poiché funziona in modo simile, tranne per il fatto che viene eseguita solo dopo la visualizzazione del modulo.
Esempi
Nel nostro snippet di codice di esempio, che vedrai di seguito, controlleremo prima se l'ID del modulo è uguale a 5. Se lo è, visualizzeremo un link per scaricare il catalogo digitale.
Ricorda solo di cambiare l'ID del modulo da 5 per corrispondere all'ID specifico del modulo su cui desideri eseguire il tuo codice. La rimozione di questo controllo lo eseguirebbe per tutti i moduli.
/**
* Output something before your form(s).
*
* @link https://wpforms.com/developers/wpforms_frontend_output_before/
*
* @param array $form_data Form data and settings.
* @param object $form Form post type object.
*/
function wpf_dev_frontend_output_before( $form_data, $form ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #5.
if ( absint( $form_data[ 'id' ] ) !== 5 ) {
return;
}
// Run code or see the example echo statement below.
_e( '<p>If you would like to download our digital catalog, <a href="http://yourlinkurl.com/" target="_blank">click here</a>.</p>', 'plugin-domain' );
}
add_action( 'wpforms_frontend_output_before', 'wpf_dev_frontend_output_before', 10, 2 );