Attention !

Cet article contient du code PHP et est destiné aux développeurs. Nous fournissons ce code à titre de courtoisie, mais nous n'offrons pas de support pour les personnalisations de code ou le développement tiers.

Pour obtenir de l'aide supplémentaire, veuillez consulter le tutoriel de WPBeginner sur l'ajout de code personnalisé.

Ignorer

Comment inclure l'URL de l'article des soumissions d'articles dans le message de confirmation

Utilisez-vous le module complémentaire Soumission d’articles et souhaitez-vous intégrer l’URL de l’article dans votre message de confirmation ? C’est simple à réaliser avec un extrait de code PHP et les balises intelligentes WPForms, et nous vous guiderons étape par étape.

Les balises intelligentes servent de liens de référence rapide utilisables dans les messages de confirmation. WPForms fournit une pléthore de balises prédéfinies pour votre commodité. Pour plus de détails sur les options disponibles, veuillez consulter cette documentation.

Mais saviez-vous que vous pouvez également créer vos propres balises intelligentes à utiliser dans WPForms ? Dans ce tutoriel, nous vous montrerons comment créer trois nouvelles balises intelligentes personnalisées :

  • Titre de l’article soumis
  • Numéro d’ID du type d’article soumis
  • URL de l’article soumis

Ces balises s’avéreront inestimables 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 de votre formulaire

Si vous avez besoin d’aide pour créer un formulaire à l’aide du module complémentaire Soumission d’articles, 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 Formulaire de soumission d’articles de blog.

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

Activation de la soumission d’articles

Ensuite, nous devrons activer la soumission d’articles. Pour ce faire, depuis le constructeur de formulaire, cliquez sur l’onglet Paramètres, sélectionnez Soumissions d’articles et activez le commutateur sur Activer les soumissions d’articles.

activez la soumission d'articles dans l'onglet Soumission d'articles de votre constructeur de formulaires, puis définissez le statut de l'article 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 vous avez défini le statut de vos articles (après soumission) sur Brouillon ou En attente de révision, lorsqu’ils essaieront de voir l’URL de l’article à partir du message de confirmation, ils obtiendront une page 404 car vous ne pouvez voir les brouillons que lorsque vous êtes connecté à WordPress.

Ajout de l’URL de l’article au message de confirmation

Une fois les paramètres de votre formulaire terminés, cliquez sur l’onglet Confirmations.

Comme nous ne voulons pas seulement 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 d'article avec les balises intelligentes déjà incluses dans le message de confirmation, dans l'onglet Texte du message

Nous allons placer notre texte et notre code HTML pour notre message et l’URL de l’article 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 soumettant le formulaire du Numéro d’ID du type d’article, du Titre de l’article et de l’URL de l’article qui serait un lien cliquable dans le Message de confirmation.

Une fois que vous avez ajouté votre message, cliquez sur Enregistrer sur le formulaire et vous êtes prêt pour la prochaine étape !

Création de la balise intelligente d’URL de soumission d’article

Il est maintenant temps d’ajouter notre extrait de code à votre site qui rassemblera tout cela. Si vous avez besoin d’aide pour ajouter des extraits de code à votre site, veuillez consulter 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 );

À l'intérieur de la première fonction, nous configurons les balises intelligentes avec les noms et les définitions des informations qu'elles contiendront, telles que le titre, l'URL et le numéro d'identification de l'article.

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

Désormais, chaque fois que nous utiliserons la balise intelligente {URL du type d'article soumis}, {Titre du type d'article soumis} ou {ID du type d'article soumis}, elles se verront automatiquement attribuer ces valeurs après une soumission de formulaire réussie, et vos visiteurs pourront facilement cliquer sur le lien cliquez ici que nous avons ajouté à notre message de confirmation et être dirigés vers le brouillon (ou l'article entièrement publié) de leur soumission, tout en voyant les autres informations telles que l'ID de l'article et le Titre de l'article.

Et maintenant, les utilisateurs peuvent cliquer sur le lien de l'URL de l'article dans le message de confirmation pour voir leur soumission.

Et c'est tout ce dont vous avez besoin ! Souhaitez-vous créer d'autres balises intelligentes personnalisées ? Consultez notre tutoriel sur Comment créer une balise intelligente personnalisée.

Filtres de référence

FAQ

Q: Puis-je faire en sorte que l'URL de l'article s'ouvre dans une nouvelle fenêtre/onglet ?

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

<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 utiliser cela dans les notifications par e-mail ?

R: Actuellement, cela n'est pas disponible pour une utilisation dans les notifications par e-mail.

Q: Pourrais-je utiliser ces balises intelligentes à l'intérieur du formulaire ?

R: Non, étant donné que l'ID et l'URL de l'article ne sont réellement attribués qu'après la soumission du formulaire, vous ne pourriez pas les utiliser avant la soumission du formulaire.