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 includere l'URL del post delle richieste nel messaggio di conferma

Stai utilizzando il componente aggiuntivo Post Submission e sei interessato a incorporare l'URL del post nel tuo messaggio di conferma? Raggiungere questo obiettivo è semplice con uno snippet PHP e i WPForms Smart Tag, e ti guideremo attraverso il processo passo dopo passo.

Gli Smart Tag servono come collegamenti di riferimento rapido utilizzabili all'interno dei messaggi di conferma. WPForms fornisce una pletora di tag predefiniti per tua comodità. Per maggiori dettagli sulle opzioni disponibili, fai riferimento a questa documentazione.

Ma sapevi che puoi anche creare i tuoi Smart Tag da utilizzare in WPForms? In questo tutorial, ti mostreremo come creare tre nuovi Smart Tag personalizzati:

  • Titolo del post inviato
  • Numero ID del tipo di post inviato
  • URL del post inviato

Questi tag si riveleranno inestimabili all'interno del nostro messaggio di conferma, permettendoci di fornire agli utenti che hanno appena inviato il modulo un link diretto al post.

Creazione del tuo modulo

Se hai bisogno di aiuto per creare un modulo utilizzando il componente aggiuntivo Post Submission, ti preghiamo di consultare questo tutorial.

Ai fini di questo tutorial, abbiamo già creato il nostro modulo con i campi predefiniti che vengono forniti con il modello Modulo di invio post del blog.

crea il tuo modulo per accettare la sottomissione del tuo post

Abilitazione dell'invio di post

Successivamente, dovremo abilitare l'invio di post. Per fare ciò, dall'interno del costruttore di moduli, fai clic sulla scheda Impostazioni, seleziona Invio post e attiva l'interruttore su Abilita invio post.

abilita le sottomissioni post nella scheda Sottomissione Post trovata nelle Impostazioni del costruttore di moduli, quindi imposta lo Stato del Post su Revisione in sospeso

Ricorda che se gli utenti che inviano i post non sono registrati sul tuo sito WordPress e hai impostato lo stato dei tuoi post (dopo l'invio) su Bozza o In attesa di revisione, quando tenteranno di visualizzare l'URL del post dal messaggio di conferma riceveranno una pagina 404 poiché puoi visualizzare solo i post in bozza mentre sei registrato su WordPress.

Aggiunta dell'URL del post al messaggio di conferma

Una volta completate le impostazioni del tuo modulo, fai clic sulla scheda Conferme.

Poiché non vogliamo solo visualizzare l'URL del post ma renderlo effettivamente un collegamento cliccabile, fai clic sulla scheda Testo nella finestra Editor e puoi aggiungere il tuo messaggio.

aggiungi il tuo messaggio di sottomissione post con gli Smart Tag già inclusi nel messaggio di Conferma mentre sei nella scheda Testo del messaggio

Inseriremo il nostro testo e l'HTML per il nostro messaggio e l'URL del post digitando quanto segue:

<p>Thanks for the submission! 
If you'd like to see a preview of your post titled 
<strong>{submitted_cpt_title}</strong> for the post type ID of 
<strong>{submitted_cpt_id}</strong>, just 
<a href="{submitted_cpt_url}">click here</a>.</p>

<p>It will be reviewed shortly.</p>

Stiamo aggiungendo un messaggio che informa il visitatore che invia il modulo del Numero ID del tipo di post, del Titolo del post e dell'URL del post che sarebbe un collegamento cliccabile all'interno del Messaggio di conferma.

Una volta aggiunto il tuo messaggio, fai clic su Salva sul modulo e sei pronto per il passo successivo!

Creazione dello Smart Tag URL di invio post

Ora è il momento di aggiungere lo snippet di codice al tuo sito che unirà tutto. Se hai bisogno di aiuto su come aggiungere snippet di codice al tuo sito, consulta questo tutorial.

/**
 * Add Smart Tags to the Post Submission confirmation messages
 *
 * @link   https://wpforms.com/developers/how-to-include-post-submissions-post-url-in-the-confirmation-message
 *
 */

// This function sets up the names of the Smart Tags we will be using.
function wpf_dev_register_smarttag( $tags ) {

	// Key is the tag, value is the tag name.
	$tags[ 'submitted_cpt_id' ]    = 'Submitted Post Type ID';
	$tags[ 'submitted_cpt_url' ]   = 'Submitted Post Type URL';
	$tags[ 'submitted_cpt_title' ] = 'Submitted Post Type Title';

	return $tags;
}

add_filter( 'wpforms_smart_tags', 'wpf_dev_register_smarttag', 10, 1 );

//This function will process the Smart Tags so that we can 
//use them inside the confirmation message and email notifications
function wpf_dev_process_smarttag( $content, $tag ) {

	if ( empty( $_POST[ 'wpforms' ][ 'entry_id' ] ) ) {
		return $content;
	}

	/** @var WPForms_Entry_Handler $entry */
	static $entry;

	if ( empty( $entry ) ) {
		$entry = wpforms()->entry->get( (int) $_POST[ 'wpforms' ][ 'entry_id' ], [ 'cap' => false ] );
	}

	if ( empty( $entry->post_id ) ) {
		return $content;
	}

	switch ( $tag ) {

		case 'submitted_cpt_id':
			$content = str_replace( '{submitted_cpt_id}', (int) $entry->post_id, $content );
			break;

		case 'submitted_cpt_url':
			$content = str_replace( '{submitted_cpt_url}', esc_url( get_permalink( (int) $entry->post_id ) ), $content );
			break;

		case 'submitted_cpt_title':
			$title   = get_post_field( 'post_title', $entry->post_id );
			$content = str_replace( '{submitted_cpt_title}', esc_html( $title ), $content );
			break;
	}

	return $content;
}

add_filter( 'wpforms_smart_tag_process', 'wpf_dev_process_smarttag', 10, 2 );

All'interno della prima funzione, stiamo configurando gli Smart Tag con nomi e definizioni di ciò che conterranno, come il titolo, l'URL e il numero ID del post.

La seconda funzione elabora questi Smart Tag e assegnerà loro il titolo, il permalink (URL) e il numero ID del tipo di post, il che ci permetterà di utilizzare questi Smart Tag nei nostri messaggi di conferma.

Ora, ogni volta che utilizziamo lo Smart Tag {Submitted Post Type URL}, {Submitted Post Type Title} o {Submitted Post Type ID}, questi verranno automaticamente assegnati a tali valori dopo un invio del modulo riuscito e i tuoi visitatori potranno facilmente fare clic sul link clicca qui che abbiamo aggiunto al nostro messaggio di conferma e essere indirizzati alla bozza (o al post pubblicato completo) della loro sottomissione, oltre a vedere le altre informazioni come il Post ID e il Post Title.

E ora gli utenti possono fare clic sul link dell'URL del post all'interno del messaggio di conferma per vedere la loro sottomissione.

E questo è tutto ciò di cui hai bisogno! Vuoi creare altri Smart Tag personalizzati? Dai un'occhiata al nostro tutorial su Come creare uno Smart Tag personalizzato.

Filtri di riferimento

FAQ

D: Posso far aprire l'URL del post in una nuova finestra/scheda?

R: Assolutamente! Se desideri che il link si apra in una nuova scheda, crea il tuo link HTML in questo modo:

<p>Thanks for the submission! 
If you'd like to see a preview of your post titled 
<strong>{submitted_cpt_title}</strong> for the post type ID of 
<strong>{submitted_cpt_id}</strong>, 
just <a href="{submitted_cpt_url}" target="_blank">click here</a>.</p>

<p>It will be reviewed shortly.</p>

D: Posso usarlo nelle notifiche email?

R: Attualmente non è disponibile per l'uso all'interno delle notifiche email.

D: Sarei in grado di usare questi Smart Tag all'interno del modulo?

R: No, poiché l'ID del post e l'URL non vengono effettivamente assegnati fino all'invio del modulo, non saresti in grado di usarli prima dell'invio del modulo.