13 Nov 2010
Posté dans : Tips and tricks

Apprendre à utiliser les shortcodes dans WordPress

Les shortcodes dans WordPress sont ces petits mots-clés que l’on retrouve entre crochets et qui servent ensuite à afficher un contenu bien particulier. Lorsque vous associez des photos à un article par exemple, le fait d’écrire [ gallery ] (Il faut enlever les espaces avant et après le mot clé pour que cela fonctionne) dans le contenu de l’article fera apparaitre automatiquement une galerie avec les images associées à l’article.

Ce shortcode fonctionne nativement dans WordPress mais il est possible ensuite de créer ses propres codes pour générer du contenu personnalisé. Imaginons que nous ayons besoin d’insérer des vidéos Youtube au sein de plusieurs articles sans pour autant copier/coller le code embed qui ne passe pas toujours très bien dans le WYSIWYG de WordPress. Il serait alors utile de créer un shortcode Youtube prenant en paramètre l’id de la vidéo.

[youtube vid="XXXX"]

Youtube est le mot clé qui va servir à identifier le shortcode

vid est un paramètre qui servira à identifier la vidéo à lancer dans le player. Il est bien entendu possible d’ajouter autant de paramètres que nécessaire.

Voyons maintenant comment faire fonctionner ce shortcode. Il va falloir ajouter quelques lignes de code au fichier fonctions.php .

function player_youtube($atts) {
 extract(shortcode_atts(array(
 'vid' => 'CQzUsTFqtW0',
 ), $atts));

return '
<object width="480" height="385">
 <param name="movie" value="http://www.youtube.com/v/'.$vid.'?fs=1&amp;hl=fr_FR"></param>
 <param name="allowFullScreen" value="true"></param>
 <param name="allowscriptaccess" value="always"></param>
 <embed src="http://www.youtube.com/v/'.$vid.'?fs=1&amp;hl=fr_FR"
 type="application/x-shockwave-flash" allowscriptaccess="always"
 allowfullscreen="true" width="480" height="385"></embed>
</object>';

 }
add_shortcode('youtube', 'player_youtube');

– On commencer par créer la fonction qui va générer le code du player youtube. $atts représente un tableau PHP avec tous les paramètres passés dans le shortcode.
– la fonction extract va récupérer tous ces paramètres et les transformer en variables PHP ($vid par exemple)
– la fonction va faire un return avec le code embed de Youtube mais l’id de la vidéo sera remplacé par la variable $vid
– On appelle ensuite la fonction add_shortcode en précisant le shortcode choisi (youtube) et la fonction qui sera appelée (player_youtube).

Nous aurions pu passer deux autres paramètres (la largeur et la hauteur du player) pour que le shortcode soit plus souple. Ceci n’était qu’une introduction à toutes les possibilités offertes par les shortcodes. Pour aller plus loin, consultez le Codex et/ou cet article qui présente 10 exemples de shortcodes.

Laisser un commentaire

Rechercher