le MEMO du WEB développeur
••• Wordpress •••  Liste des Mémos, astuces et bonnes pratiques

Créer un Shortcode avec Wordpress

Un Shortcode Wordpress est une fonctionnalité complexe qui va pouvoir être appelée directement depuis l'éditeur de contenu Wordpress sous la forme [nom-de_mon_shortcode].

Très pratique pour ajouter des fonctionnalités particulières et complexes à l'intérieur du contenu d'une page.
Un Shortcode connu des utilisateurs de Wordpress est celui qui affiche une galerie de photos [gallery]

Comment créer un ShortCode WordPress

Le code de votre Shortcode se place dans le fichier functions.php de votre thème ou dans le fichier de votre plugin.

Un shortcode simple et sans paramètres 

Ci dessous un exemple simple (et inutile ..) sans paramètres, pour comprendre le principe:

function pour_exemple_func( $atts ) {
  return 'euh ... c\'est juste pour l\'exemple';
}
add_shortcode( 'pour_exemple', 'pour_exemple_func' );

Si on rajoute le bout de code [pour_exemple] dans l'éditeur Wordpress, on verra apparaître à son enplacement dans la page :  'euh ... c'est juste pour l'exemple'

Un shortcode avec paramètres

Créons un shortcode à 4 paramètres, un titre, un texte, une lien src vers une image et un lien vers une page internet.
Ce code permet par exemple de mettre en page un bloc de contenu de format constant .
La fonction shortcode_atts, liste les paramètres du shortcode avec leurs valeurs par défaut (qui peuvent être vides)

function mon_bloc_func( $atts ) {

      $atts = shortcode_atts( array(      
           'titre' => 'Titre par défaut',
           'texte' => '',
           'img' => 'http://memo-web.fr/img/images-defaut.jpg',
           'lien' => 'http://memo-web.fr'
      ), $atts, 'mon_bloc' );

      return "<div class='mon_bloc_style> 
                     <a href=\"{$atts['lien']}\"><img src=\"{$atts['img']}\" alt=\"{$atts['titre']}\" /> </a>
                    <div><h3><a href=\"{$atts['lien']}\">{$atts['titre']}</a></h3> {$atts['texte']}</div>
                 </div>";

}
add_shortcode( 'mon_bloc', 'mon_bloc_func' );

Appel du shortcode dans l'éditeur WordPress : 

[mon_bloc titre="Le titre de mon bloc" texte="Le texte à afficher bla bla bla" ]

Si un paramètre n'est pas spécifié explicitement dans le shortcode (ici img et lien ), on prendra en compte sa valeur par défaut.

publié le 18/11/2014 par Memo Web
Commenter le Mémo :

Une liste d'articles au hasard dans Wordpress
Ne pas afficher les commentaires sur les pages d'un siteWordpress
Wordpress : Déclarer un script uniquement pour un template précis
Récupérer l'URL de l'image à la une (featured image) d'un article ou d'une page WordPress
Migration d'un site Wordpress : Perte des menus et des widgets
Ajouter le formulaire de recherche Wordpress en PHP
Problème d'accès à l'admin WordPress MultiSite
Recadrer une miniature (thumbnail) WordPress
Comment laisser l'affichage de the_excerpt() si l'extrait est laissé vide dans l'administration de WordPress
WordPress en multisite, passer du fonctionnement sous domaine au sous répertoire
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos