Le principe des shortcodes
Un shortcode (code court) permet d’injecter du code (PHP, HTML, JS et CSS) à n’importe quel endroit du site WordPress.
Format d’affichage : [mon_shortcode]
ou avec paramètres [mon_shortcode name="Mickaël"]
Créer ses premiers shortcodes réguliers
Vous pouvez jouter un appel à add_shortcode()
depuis le fichier functions.php de votre thème ou depuis un plugin (méthode plus propre).
Remarque : il ne faut pas afficher une valeur dans le shortcode, mais la retourner à la fin.
Version avec l’utilisation de la fonction wp_get_current_user()
pour retourner des informations sur l’utilisateur actif :
Un exemple avec un shortcode paramétrable :
Version avec l’utilisation de la fonction get_userdata()
pour retourner des informations sur l’utilisateur actif :
Les shortcodes englobants
Un shortcode WordPress englobant (wrap) est une fonctionnalité qui vous permet de créer un shortcode personnalisé dans WordPress qui englobe le contenu existant.
Par exemple, vous pouvez créer un shortcode englobant [encadrer]
qui ajoute un cadre stylisé autour du contenu existant, sans le modifier.
Lorsque vous utiliserez ce shortcode dans votre contenu, il encadrera le contenu sans le modifier.
Afficher le rendu d’un shortcode
La fonction the_content()
affiche le rendu de vos shortcodes WordPress, à condition qu’ils soient intégrés dans le contenu principal de la publication.
Si vous souhaitez afficher le rendu d’un shortcode dans un autre endroit spécifique, utilisez la fonction do_shortcode()
ou sa nouvelle version apply_shortcode()
.
Cette fonction va exécuter le shortcode WordPress et récupérer son contenu.
$content = "Voici du contenu avec un shortcode : [mon_shortcode]";
$shortcode_content = apply_shortcode($content);
echo $shortcode_content;
Dans cet exemple, nous avons une variable $content
qui contient du texte avec un shortcode [mon_shortcode]
.
Remarque : assurez-vous de remplacer [mon_shortcode]
par le nom du shortcode que vous souhaitez exécuter.
En utilisant apply_shortcode()
, nous exécutons le shortcode et récupérons son contenu dans la variable $shortcode_content
.
Ensuite, nous l’affichons en utilisant echo
.
Shortcodes et WP Query
WP Query est une classe de WordPress qui permet de récupérer des contenus de la base de données selon des critères spécifiques.
Elle est utilisée pour exécuter des requêtes personnalisées sur les articles, les pages, les types de contenu personnalisés et autres éléments de WordPress.
Avec WP Query, vous pouvez spécifier divers paramètres pour filtrer et trier les résultats de la requête.
Une fois que vous avez instancié un objet WP Query avec vos paramètres, vous pouvez parcourir les résultats à l’aide d’une boucle while
et accéder aux informations de chaque élément récupéré.
Remarque : n’oubliez pas d’appeler wp_reset_postdata()
après avoir terminé votre boucle WP Query pour réinitialiser les données de publication.
Exemple complet avec récupération des valeurs d’un CPT :
Conseil : pour améliorer la gestion de votre code source, vous pouvez utiliser la fonction get_template_part()
de WordPress qui permet d’inclure des fichiers de modèles réutilisables dans un thème.