Comment inclure l'URL de l'article soumis dans le message de confirmation ?

Vous utilisez l'addon Post Submission et vous souhaitez incorporer l'URL de l'article dans votre message de confirmation ? C'est très simple avec un snippet PHP et les Smart Tags de WPForms, et nous allons vous guider pas à pas à travers le processus.

Les Smart Tags servent de liens de référence rapide utilisables dans les messages de confirmation. WPForms fournit une pléthore de balises pré-construites pour votre confort. Pour plus de détails sur les options disponibles, veuillez vous référer à cette documentation.

Mais saviez-vous que vous pouvez aussi créer vos propres Smart Tags pour les utiliser dans WPForms ? Dans ce tutoriel, nous allons vous montrer comment créer trois nouvelles étiquettes intelligentes personnalisées :

  • Titre du message soumis
  • Type de poste soumis Numéro d'identification
  • URL du message soumis

Ces balises s'avéreront précieuses dans notre message de confirmation, nous permettant de fournir aux utilisateurs qui viennent de soumettre le formulaire un lien direct vers l'article.

Création du formulaire

Si vous avez besoin d'aide pour créer un formulaire à l'aide de l'addon Post Submission, veuillez consulter ce tutoriel.

Pour les besoins de ce tutoriel, nous avons déjà créé notre formulaire avec les champs par défaut fournis avec le modèle de formulaire de soumission d'articles de blog.

créez votre formulaire pour accepter la soumission de votre message

Permettre la soumission de messages

Ensuite, nous devons activer les soumissions de messages. Pour ce faire, dans le générateur de formulaires, cliquez sur l'onglet Paramètres, sélectionnez Soumissions de messages et basculez le commutateur sur Activer les soumissions de messages.

activer les soumissions de messages dans l'onglet Soumission de messages qui se trouve dans les Paramètres du générateur de formulaires, puis définir le statut du message sur En attente de révision.

N'oubliez pas que si les utilisateurs qui soumettent les articles ne sont pas connectés à votre site WordPress et que le statut de vos articles (après soumission) est défini sur Brouillon ou En attente de révision, lorsqu'ils essaieront de consulter l'URL de l'article à partir du message de confirmation, ils obtiendront une page 404, car vous ne pouvez consulter les brouillons d'articles que si vous êtes connecté à WordPress.

Ajout de l'URL du message au message de confirmation

Une fois les paramètres du formulaire définis, cliquez sur l'onglet Confirmations.

Puisque nous ne voulons pas simplement afficher l'URL de l'article mais en faire un lien cliquable, cliquez sur l'onglet Texte dans la fenêtre de l'éditeur et vous pourrez ajouter votre message.

ajoutez votre message de soumission de message avec les Smart Tags déjà inclus dans le message de confirmation dans l'onglet Texte du message

Nous allons placer notre texte et notre HTML pour notre message et l'URL du message en tapant ce qui suit :

<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>

Nous ajoutons un message qui informe le visiteur qui soumet le formulaire du numéro d'identification du type d'article, du titre de l'article et de l'URL de l'article qui sera un lien cliquable dans le message de confirmation.

Une fois que vous avez ajouté votre message, cliquez sur Enregistrer dans le formulaire et vous êtes prêt pour l'étape suivante !

Création de l'URL de soumission de l'article Smart Tag

Il est maintenant temps d'ajouter à votre site l'extrait de code qui permettra d'assembler le tout. Si vous avez besoin d'aide pour ajouter des extraits de code à votre site, consultez ce tutoriel.

/**
 * 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 );

Dans la première fonction, nous configurons les Smart Tags avec des noms et des définitions des informations qu'ils contiendront, telles que le titre, l'URL et le numéro d'identification de l'article.

La deuxième fonction traite ces étiquettes intelligentes et leur attribue un titre, un permalien (URL) et un numéro d'identification du type de message, ce qui nous permettra d'utiliser ces étiquettes intelligentes dans nos messages de confirmation.

Maintenant, chaque fois que nous utilisons l'URL du {Type de message soumis}, le titre du {Type de message soumis} ou l'ID du {Type de message soumis}. ou {Submitted Post Type ID} ces valeurs leur seront automatiquement attribuées après une soumission de formulaire réussie et vos visiteurs pourront facilement cliquer sur le lien cliquer ici que nous avons ajouté à notre message de confirmation et être dirigés vers le brouillon (ou l'article publié complet) de leur soumission ainsi que voir les autres informations telles que l'ID de l'article et le titre de l'article.

Les utilisateurs peuvent désormais cliquer sur le lien URL de l'envoi dans le message de confirmation pour voir leur envoi.

Et c'est tout ce dont vous avez besoin ! Vous souhaitez créer d'autres étiquettes intelligentes personnalisées ? Consultez notre tutoriel sur la création d'une étiquette intelligente personnalisée.

Filtres de référence

FAQ

Q : Puis-je faire en sorte que l'URL du message s'ouvre dans une nouvelle fenêtre ou un nouvel onglet ?

R : Absolument ! Si vous souhaitez que le lien s'ouvre dans un nouvel onglet, créez votre lien HTML comme suit :

<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>

Q : Puis-je l'utiliser dans les notifications par courrier électronique ?

R : Actuellement, il n'est pas possible d'utiliser cette fonction dans les notifications par courrier électronique.

Q : Puis-je utiliser ces Smart Tags à l'intérieur du formulaire ?

R : Non, puisque l'ID et l'URL du message ne sont pas attribués tant que le formulaire n'est pas soumis, vous ne pouvez pas les utiliser avant la soumission du formulaire.