Créer des Shortcode WordPress pour Gagner du Temps

Il est possible de gagner beaucoup de temps dans l’écriture de ses billets WordPress en créant des shortcode. En insérant quelques lignes de codes dans le fichier functions.php de notre thème, nous pouvons par exemple insérer une vidéo dans un billet, sans se soucier du code de lecteur, en encadrant simplement le nom d’un fichier vidéo de balises. L’insertion de galeries dans les billets se fait d’ailleurs grâce à un shortcode.
Le fonctionnement d’un shortcode est hyper-simple à comprendre : quand WordPress trouve un shortcode dans un billet, il le remplace par du code renvoyé par une fonction. Nous pouvons, comme dans le cas de notre lecteur vidéo, passer des paramètres à la fonction, qui sont ici le nom d’un fichier. Cette fonctionnalité permet donc de changer son lecteur vidéo sans avoir à modifier tous nos billets mais aussi et surtout ici de gagner un temps en maintenance du blog.

Un shortcode se présente dans un billet sous l’une des formes suivantes:

[monshortcode1]
[monshortcode2 parametre1="parametre1" parametre1="parametre2"]
[monshortcode3]texte passé en paramètre[/monshortcode3]

Tous les shortcode appelle la fonction qui leur est associée. Le deuxième et le troisième passe des paramètres à la fonction enregistrée.

Pour enregistrer un shortcode, il suffit de le déclarer très simplement dans le fichier functions.php du thème activé.

Pour [monshortcode1]:

function monshortcode1_func() {
	return "je remplace le shortcode du billet";
}
add_shortcode( 'monshortcode1', 'monshortcode1_func' );

La fonction add_shortcode(nomDuShortCode, fonctionAssociee) permet d’enregistrer le shortcode monshortcode1 et de lui associer la fonction monshortcode1_func().


Pour [monshortcode2 parametre1= »parametre1″ parametre1= »parametre2″]

function monshortcode2_func( $atts ) {
	extract( shortcode_atts( array(
		'parametre1' => 'valeur par défaut',
		'parametre2' => 'deuxième valeur par défaut',
	), $atts ) );

	return "j'ai passé: $parametre1 et parametre2";
}
add_shortcode( 'monshortcode2', 'monshortcode2_func' );

Pour [monshortcode3]texte passé en paramètre[/monshortcode3]:

function monshortcode3_func($atts, $content = null) {
	return "j'ai passé: $content";
}
add_shortcode( 'monshortcode3', 'monshortcode3_func' );

Vous trouvez plus d’infos évidemment sur la page du codex consacrée aux shortcode. Je ferai quand j’ai le temps un petit billet sur les filtres qui peuvent aussi faire gagner un temps fou.

Publié dans Wordpress

quand j’aurai le temps

  • les filtres wordpress
  • plugin wordpress et enregistrement de données
  • les wordpress custom post type
  • la bdd d'un blog wordpress
  • la balise more de wp
  • personnaliser une galerie wp
  • gérer les longueurs des extraits de wp
  • les animations css3
  • le memento symphony2
  • le squelette d'une page html5
  • liste sur plusieurs colonnes
  • le responsive design
  • exemple d'un jeu basique en html5
  • la réplication des bases de données
  • mettre en place une architecture en silo avec wp
  • parser un fichier xml (donc un rss) avec php5
  • mettre en place lightbox sans plugin
  • améliorer les performances de son wp
  • ajouter un bouton à l'éditeur de texte de wp
  • ...