Astuce WordPress : confirmer la publication d’un nouvel article

Astuce WordPress : confirmation avant la publication d'un article

Voyons cette fois une astuce qui m’aurait été utile un peu plus tôt : l’ajout d’une confirmation au moment de la publication, c’est-à-dire au clic sur le bouton ‘Publier’ d’un nouvel article.

Pourquoi confirmer ?

Avec WordPress, il m’arrive quelquefois de cliquer sur le bouton ‘Publier’ au lieu de celui permettant d’enregistrer le brouillon. Cette erreur vient le plus souvent de mon habitude du moment, c’est-à-dire pendant la création d’une page au brouillon après avoir modifié une série de pages déjà publiées.

Généralement, il s’agit de sites en construction, donc Google n’a pas le temps de voir le contenu, personne n’est abonné au flux RSS ni à la newsletter, et aucune publication sur les réseaux sociaux n’est faite… sauf une fois où j’ai publié un article en cours de rédaction et de test bien avant qu’il ne soit prêt.

En l’occurrence, c’était l’article sur la mise en place de fil d’Ariane avec WordPress SEO by Yoast : la partie configuration était prête, mais pas la partie concernant la vérification sur Google.

Et là c’était le drame. Un drame tout relatif, mais quand même : mes millions de followers ont été notifiés, pareil pour les centaines de milliers d’abonnés RSS, et je ne parle même pas des milliards d’abonnés au mail qui prévient de la publication d’un nouvel article (inscrivez-vous !). J’ai eu beau repasser l’article en brouillon et supprimer toutes traces de l’article, son URL était dans la nature.

Il était même présent quelques jours plus tard dans les pages introuvables de Google Webmaster Tools…

A ce moment là, une confirmation avant publication m’aurait été bien utile.

Astuce WordPress : confirmation avant la publication d'un article
Le bouton de confirmation
En dehors de la prévention d’erreur, cette confirmation peut servir à rappeler aux différents rédacteurs d’un blog de vérifier que l’article est conforme aux règles de publication.

Comment faire ?

Pour ajouter cette confirmation, il suffit d’ajouter ce code à l’endroit habituel :

// Demande une confirmation avant la publication d'article
function confirmPublication() {
global $post;
if (in_array(get_post_type($post), array("post", "page")) && (get_post_status($post->ID) != "publish")) {
echo "<script langage='javascript'>jQuery(function() { if (jQuery('#publish')) { jQuery('#publish').on('click', function(e) { if (!confirm('Etes-vous certain de vouloir publier ce contenu maintenant ?')) { e.stopImmediatePropagation(); e.preventDefault(); return false; } else { return true; } } ); } });</script>";
}
}
add_action( "post_submitbox_misc_actions", "confirmPublication");

Voilà quelques explications si vous souhaitez personnaliser cette fonctionnalité :

  • l’affichage du message de confirmation est en jQuery. Il utilise l’instance de jQuery faite par l’interface d’administration de WordPress.
  • la confirmation apparaîtra pour les articles et les pages. Vous pouvez ajouter la confirmation sur d’autres types de post, les custom post types en général, en ajoutant le type dans les parenthèses de array("post", "page")
  • cette modification n’est effective que sur la page d’édition de l’administration WordPress
  • vous pouvez personnaliser le texte pour rappeler aux autres rédacteurs, ou à vous-même, de vérifier la liste des règles avant la publication
  • vous pouvez également remplacer l’appel à la fonction JavaScript confirm par autre chose de plus adapté à votre besoin.

Le mot de la fin

Vous voilà parés pour ne plus publier aucun article par erreur.

N’hésitez pas à partager vos personnalisations dans les commentaires !

Cet article vous a été utile ? Partage it !

4 réflexions au sujet de « Astuce WordPress : confirmer la publication d’un nouvel article »

    1. En effet, je n’avais pas compris que la publication était effective une fois le laps de temps écoulé.
      Pour moi, l’article était publié, puis ‘dépublié’ en cas de clic sur le bouton ‘Undo’.
      Le plugin dont tu parles est donc bien préventif. Au temps pour moi 🙂
      David

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Si vous le souhaitez, renseignez le champ 'Nom' de cette façon : 'VotreNom@VotreMotClef' pour obtenir une ancre optimisée pour les moteurs de recherche.