Source : https://kinsta.com/fr/blog/shortcodes-wordpress/
Les codes courts de WordPress sont une fonction puissante qui permet de faire des trucs sympas avec peu dâefforts. On peut faire Ă peu prĂšs nâimporte quoi avec eux. Avec les codes courts, lâintĂ©gration dâĂ©lĂ©ments interactifs ou la crĂ©ation de mises en page complexes est aussi simple que lâinsertion dâune seule ligne de code.
Si vous voulez ajouter une galerie, il suffit de saisir le code suivant :
Cela produira une galerie avec les images des IDs mentionnés. Elle aura 4 colonnes et leur taille maximale sera « moyenne » (selon la définition de WordPress).
Il nây a pas besoin dâun code HTML moche.
Exemple de code court de galerie Les codes courts Ă©liminent le besoin de scripts compliquĂ©s. MĂȘme si vous avez peu ou pas de compĂ©tences en programmation, vous pouvez ajouter du contenu dynamique sans effort avec leur aide.
Ils sont trÚs populaires au sein des développeurs de WordPress , car ils aident énormément à automatiser la création de contenu et de design. Les codes courts sont aux développeurs de WordPress ce que les macros sont aux analystes de données, ou les raccourcis clavier aux graphistes professionnels.
Dans ce guide, vous apprendrez tout ce quâil y a Ă savoir sur les codes courts. Vous dĂ©couvrirez comment travailler avec lâAPI des codes courts en crĂ©ant vos propres codes courts. Enfin, nous discuterons de lâavenir des codes courts et de la place quâils occupent dans le nouvel Ă©diteur de bloc de WordPress .
Ăa vous excite ? Commençons !
Table des matiĂšres Quâest-ce quâun code court ?
Les codes courts par défaut de WordPress
Comment créer un code court personnalisé dans WordPress (niveau débutant)
Codes courts de WordPress : Avantages et inconvénients
Codes courts et blocs Gutenberg Quâest-ce quâun code court ? En bref, Code court = Raccourci + Code .
En gĂ©nĂ©ral, les codes courts utilisent des balises entre crochets [] pour dĂ©finir leur utilisation. Chaque code court remplit une fonction particuliĂšre dans un site. Elle peut ĂȘtre aussi simple que la mise en forme du contenu ou aussi complexe que la dĂ©finition de la structure du site web dans son ensemble.
Par exemple, vous pouvez utiliser des codes courts pour intĂ©grer des diaporamas , des formulaires , ou les tableaux de tarifs . Vous pouvez mĂȘme les utiliser pour crĂ©er des modĂšles de design de pages rĂ©utilisables.
Une brĂšve histoire des codes courts Les codes courts ont dâabord Ă©tĂ© rendus populaires par un logiciel de forum en ligne appelĂ© Ultimate Bulletin Board (UBB). En 1998, ils ont introduit le BBCode (Bulletin Board Code) , une collection de balises faciles Ă utiliser pour permettre aux utilisateurs de formater facilement leurs articles.
Formatage facile avec des BBCodes simples En tant que langage de balisage lĂ©ger, le BBCode fonctionne sur les mĂȘmes principes que le HTML, sauf quâil est beaucoup plus simple.
Lâutilisation de balises prĂ©dĂ©finies est Ă©galement beaucoup plus sĂ»re, car les utilisateurs ne peuvent pas insĂ©rer de code HTML et introduire des vulnĂ©rabilitĂ©s en matiĂšre de sĂ©curitĂ© . Par exemple, un utilisateur mal intentionnĂ© pourrait utiliser la balise <script> pour exĂ©cuter du code JavaScript et casser la fonctionnalitĂ© du site.
Peu aprĂšs, dâautres logiciels de forum en ligne tels que phpBB , XMB Forum , et vBulletin a ajoutĂ© la fonctionnalitĂ© BBCode dans ses tableaux de message.
Les codes courts ont permis aux administrateurs dâavoir un plus grand contrĂŽle sur ce que leurs utilisateurs peuvent et ne peuvent pas faire. De plus, ils ont permis aux utilisateurs de formater leur contenu par le biais de simples balises.
Pour les mĂȘmes raisons de sĂ©curitĂ©, WordPress empĂȘche le code PHP de sâexĂ©cuter Ă lâintĂ©rieur du contenu du site. Pour surmonter cette limitation, WordPress 2.5 a introduit la fonctionnalitĂ© des codes courts en 2008 avec la publication dâAPI de code court . Il sâest avĂ©rĂ© ĂȘtre lâune des fonctionnalitĂ©s les plus utilisĂ©es par de nombreux dĂ©veloppeurs dâextensions et de thĂšmes WordPress.
Que sont les codes courts de WordPress ? Les codes courts WordPress sont des chaĂźnes de crochets ([ ] ) qui se transforment comme par magie en quelque chose de fascinant sur lâinterface publique. Ils permettent aux utilisateurs de crĂ©er et de modifier facilement des contenus complexes sans avoir Ă se soucier de la complexitĂ© du HTML ou des codes dâintĂ©gration.
Les codes courts de WordPress sont simples et faciles Ă utiliser Les 2 types de codes courts Il existe principalement deux types de codes courts dans WordPress.
Les codes courts dâauto-fermeture et de fermeture peuvent ĂȘtre valides avec ou sans attributs. Codes courts Ă fermeture automatique : Ils nâont pas besoin dâune balise de fermeture.Exemple : Le code court caption nâa pas besoin de balise de fermeture. Nous ajoutons tout ce dont il a besoin avec diffĂ©rents attributs.
Codes courts de fermeture : Ces derniers ont besoin dâune balise de fermeture. Les codes courts de fermeture manipulent gĂ©nĂ©ralement le contenu entre les balises dâouverture et de fermeture.Exemple : Le code court de caption est utilisĂ© pour entourer une lĂ©gende autour de nâimporte quel contenu. Il est principalement utilisĂ© pour ajouter une lĂ©gende aux images, mais il fonctionne avec nâimporte quel Ă©lĂ©ment HTML.
Certains codes courts fonctionnent avec ou sans attributs. Cela dépend de la façon dont ils sont définis.
Les codes courts par défaut de WordPress WordPress est livré avec 6 codes courts par défaut :
audio : Intégrez des fichiers audio sur votre site web. Il comprend des commandes de lecture simples comme Play & Pause.
caption : Enveloppez votre contenu avec des lĂ©gendes. Il est surtout utilisĂ© pour ajouter des lĂ©gendes dâimages, mais vous pouvez lâutiliser pour nâimporte quel Ă©lĂ©ment HTML.
embed : Développe la fonctionnalité oEmbed par défaut. Ce raccourci vous permet de définir différents attributs à vos incorporations, comme la définition de leurs dimensions maximales.
gallery : InsĂ©rez une simple galerie dâimages sur votre site. Vous pouvez utiliser des attributs pour dĂ©finir quelles images sont utilisĂ©es et personnaliser lâapparence de la galerie.
playlist : Affichez une collection de fichiers audio ou vidéo avec ce code court à fermeture automatique. Vous pouvez lui donner un mode « dark » avec son attribut de style.
video : IntĂ©grer un fichier vidĂ©o et le lire Ă lâaide dâun simple lecteur vidĂ©o. Ce code court permet dâintĂ©grer des vidĂ©os dans ces formats : mp4, webm, m4v, webm, ogv, wmv, flv.Pour plus de dĂ©tails sur la maniĂšre dâutiliser les codes courts par dĂ©faut et sur les attributs quâils prennent en charge, vous pouvez vous rĂ©fĂ©rer aux documents du Codex liĂ©s.
Lâutilisation des codes courts dans WordPress est un processus simple. Mais cela dĂ©pend de lâendroit oĂč vous voulez les ajouter sur votre site. Assurez-vous de lire la documentation sur les codes courts pour comprendre comment cela fonctionne. Apprenez les attributs qui sont supportĂ©s, afin dâobtenir exactement ce que vous voulez.
Utilisation des codes courts de WordPress dans les pages et les articles Tout dâabord, allez dans lâĂ©diteur de page ou dâarticle oĂč vous voulez insĂ©rer le code court.
Si vous utilisez lâĂ©diteur Gutenberg, vous pouvez ajouter la balise de code court dans le bloc autonome Codes courts. On peut la trouver dans la section Widgets.
Ajout dâun bloc de code court Ă Gutenberg Le bloc de codes courts de Gutenberg Vous utilisez toujours lâĂ©diteur classique (ou lâextension Classic Editor) ? Vous pouvez saisir vos codes courts de la maniĂšre classique. Quelques codes courts peuvent mĂȘme avoir un bouton dans lâĂ©cran de lâĂ©diteur pour les insĂ©rer facilement.
Ajout dâun code court dans lâĂ©diteur classique Des codes courts peuvent Ă©galement ĂȘtre insĂ©rĂ©s dans les widgets de la barre latĂ©rale . Pour les ajouter, allez dans Apparence » Widgets et ajoutez un widget Texte dans la section oĂč vous voulez ajouter le code court.
Ajoutez un code court dans votre barre latĂ©rale avec le widget Texte Collez le code court dans le widget Texte et enregistrez-le. Vous pouvez visiter lâinterface publique de votre site et voir le rĂ©sultat du code court dans votre barre latĂ©rale.
Lâaffichage du code court (galerie) qui peut ĂȘtre vu dans la barre latĂ©rale Note : WordPress 4.8 et les versions infĂ©rieures ne prennent pas en charge les code court dans les widgets de la barre latĂ©rale. Lisez AmĂ©liorations des widgets dans la mise Ă jour de WordPress 4.9 pour en savoir plus.
Utilisation des codes courts de WordPress dans lâen-tĂȘte et le pied de page Les codes courts de WordPress sont en gĂ©nĂ©ral destinĂ©s aux pages, aux articles et aux widgets. Mais vous avez un moyen facile dâinsĂ©rer des codes courts nâimporte oĂč dans votre site.
Disons que vous voulez ajouter un bouton dâappel Ă lâaction dans votre pied de page, ou dans tous vos articles avant la section des commentaires. La fonction de callback do_shortcode() sâavĂšre utile ici.
Vous devez ajouter le code suivant au fichier header.php ou footer.php de votre thĂšme, ou Ă lâun de ses fichiers de modĂšle :
<?php echo do_shortcode("[name_of_your_shortcode]"); ?>
Le code court sera alors affichĂ© Ă lâendroit oĂč vous lâavez insĂ©rĂ©.
Vous devez inclure les crochets entre les guillemets pour faire Ă©cho au code court. Le simple fait dâinclure son nom ne fonctionnera pas.
De mĂȘme, vous pouvez utiliser la fonction de callback do_shortcode() pour activer les codes courts partout dans WordPress, comme dans la section des commentaires.
Une introduction rapide Ă lâAPI des codes courts LâAPI des codes courts de WordPress dĂ©finit la maniĂšre dont vous pouvez utiliser les codes courts pour personnaliser et Ă©tendre les fonctionnalitĂ©s de votre site. Il permet aux dĂ©veloppeurs de crĂ©er un contenu unique (par exemple des formulaires, des carrousels, des diaporamas, etc.) que les utilisateurs peuvent ajouter sur leurs sites en collant le code court correspondant.
Vous pouvez ajouter presque toutes les fonctionnalitĂ©s que vous pouvez imaginer Ă votre site web Ă lâaide de codes courts.
LâAPI prend en charge les codes courts Ă fermeture automatique et les codes courts de fermeture. Cela gĂšre toutes les analyses dĂ©licates et comprend des fonctions dâaide pour dĂ©finir et rĂ©cupĂ©rer les attributs par dĂ©faut.
GrĂące Ă lâAPI, vous pouvez vous plonger directement dans le dĂ©veloppement et la personnalisation des codes courts, plutĂŽt que de perdre un temps prĂ©cieux Ă dĂ©finir des expressions rĂ©guliĂšres pour chaque code court que vous crĂ©ez.
Comprendre les bases de lâAPI de code court Chaque fois que vous ouvrez une page ou un article dans WordPress, il recherche les codes courts enregistrĂ©s tout en traitant le contenu du site.
Si un code court enregistrĂ© est trouvĂ©, lâAPI des codes courts prend le relais et renvoie lâaffichage du ou des codes courts. La chaĂźne renvoyĂ©e remplace la balise de code court Ă lâendroit oĂč elle a Ă©tĂ© ajoutĂ©e.
Vous enregistrez un code court dans WordPress avec la fonction add_shortcode() . Voici comment on procĂšde :
add_shortcode( 'shortcode_name', 'shortcode_handler_function' );
shortcode_name : La balise WordPress sera recherchĂ©e lors de lâanalyse du contenu des articles. LâAPI des codes courts vous recommande de nâutiliser que des lettres minuscules, des chiffres et des underscores pour dĂ©finir sa valeur (Ă©vitez les tirets).
shortcode_handler_function : La fonction de callback qui sera exĂ©cutĂ©e aprĂšs que WordPress aura confirmĂ© la prĂ©sence dâun code court enregistrĂ©.
La fonction handler shortcode est définie comme ceci :
function shortcode_handler_function( $atts, $content, $tag ){ }
$atts : Un tableau associatif dâattributs (câest-Ă -dire un tableau de paires clĂ©-valeur). Si vous ne dĂ©finissez aucun attribut, il sâagira par dĂ©faut dâune chaĂźne vide.
$content : Le contenu de fermeture, si vous dĂ©finissez un code court de fermeture. Câest la responsabilitĂ© de la fonction handler de sâassurer que la valeur de $content est retournĂ©e Ă la sortie.
$tag : La valeur de la balise du code court (shortcode_name dans lâexemple ci-dessus). Si deux ou plusieurs codes courts partagent la mĂȘme fonction (valide) de callback, la valeur $tag vous aidera Ă dĂ©terminer quel code court a dĂ©clenchĂ© la fonction handler.LâAPI analyse la balise du code court, ses attributs et le contenu inclus (le cas Ă©chĂ©ant) en contournant les valeurs vers la fonction handler, qui les traite et renvoie une chaĂźne de sortie.
Cette chaĂźne de sortie remplace la macro de raccourci sur lâinterface publique de votre site. Ce que vous voyez finalement dans le navigateur, câest cette sortie.
OĂč ajouter vos scripts personnalisĂ©s de codes courts ? Vous pouvez ajouter vos scripts personnalisĂ©s de codes courts au fichier functions.php du thĂšme ou les inclure dans une extension.
Si vous lâajoutez Ă un fichier de thĂšme, vous pouvez exĂ©cuter la fonction add_shortcode() telle quâelle.
Mais si vous lâajoutez Ă une extension, je vous recommande de ne lâinitialiser quâaprĂšs le chargement complet de WordPress. Vous pouvez vous en assurer en enveloppant la fonction add_shortcode() dans une autre fonction. Câest ce quâon appelle un enveloppement de fonction :
function shortcodes_init(){
add_shortcode( 'shortcode_name', 'shortcode_handler_function' );
}
add_action('init', 'shortcodes_init');
La fonction add_action() accroche la fonction shortcodes_init pour ne se dĂ©clencher quâune fois le chargement de WordPress terminĂ© (elle est appelĂ©e âinitâ hook ).
Maintenant que nous avons couvert les bases, il est temps de créer un code court personnalisé.
Pour suivre les Ă©tapes indiquĂ©es ci-dessous, vous devez ĂȘtre familiarisĂ© avec le code PHP et modifier vos fichiers de thĂšme WordPress . Lorsque vous aurez terminĂ© le tutoriel, vous aurez votre premier code court WordPress personnalisĂ© prĂȘt Ă ĂȘtre lancĂ© !
Nous commencerons par le code court le plus simple possible, puis nous passerons Ă des codes courts plus complexes. Profitez des courtes Ă©tapes sur le chemin de la maĂźtrise des codes courts !
Exemple 1 : code court utilisant [current_year] CrĂ©ons un code court appelĂ© [current_year] qui affiche lâannĂ©e en cours sur votre site web.
Ce code court est utile si vous ajoutez Ă votre site web du contenu qui doit ĂȘtre mis Ă jour chaque annĂ©e. Par exemple, en ajoutant une mention de droit dâauteur en bas de page de votre site.
Je vais utiliser une extension barebones pour ajouter mes fonctions de code court. Vous pouvez lâajouter au fichier functions.php de votre thĂšme et obtenir les mĂȘmes rĂ©sultats, mais je ne le recommande pas. Mais câest bon pour tester et apprendre !
Info Faites une sauvegarde avant dâapporter des modifications Ă votre site. Kinsta fournit des sauvegardes automatiques Ă tous ses clients .
Commençons par créer une extension. Créez un nouveau dossier dans votre répertoire /wp-content/plugins/.
Notez lâemplacement du rĂ©pertoire des extensions Je nomme mon plugin « salcodes » mais vous pouvez lui donner le nom que vous voulez.
Dans le rĂ©pertoire de lâextension salcodes, crĂ©ez un fichier PHP du mĂȘme nom (salcodes.php ). Une fois fait, ajoutez lâen-tĂȘte suivant au fichier de votre extension :
<?php
/*
Plugin Name: Salcodes
Version: 1.0
Description: Output the current year in your WordPress site.
Author: Salman Ravoof
Author URI: https://www.salmanravoof.com/
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: salcodes
*/
Ce simple en-tĂȘte dâextension est suffisant pour nos besoins. Vous pouvez en savoir plus sur les exigences en matiĂšre dâen-tĂȘte dâextension dans le Codex WordPress. Enregistrez ce fichier, puis allez sur votre Tableau de bord WordPress pour activer lâextension.
Maintenant, enregistrons le code court et sa fonction handler. Pour ce faire, ajoutez le code suivant Ă votre fichier dâextension :
/**
* [current_year] returns the Current Year as a 4-digit string.
* @return string Current Year
*/
add_shortcode( 'current_year', 'salcodes_year' );
function salcodes_init(){
function salcodes_year() {
return getdate()['year'];
}
}
add_action('init', 'salcodes_init');
/** Always end your PHP files with this closing tag */
?>
La balise @return dans le commentaire PHP dĂ©finit le type de sortie renvoyĂ©e. Il est suivi dâune brĂšve description de la mĂȘme chose.
current_year est la balise ou le nom du code court. Elle définit la balise à fermeture automatique que vous devez ajouter à votre contenu, qui dans ce cas serait [current_year].
salcodes_year est le nom de la fonction de traitement des codes courts qui renvoie la chaĂźne de sortie. Nous dĂ©finirons cette fonction de rappel dans les prochaines lignes. Comme nous crĂ©ons un simple code court Ă fermeture automatique, vous nâavez pas Ă lui transmettre de valeurs variables telles que $attributes, $content ou $tag.
salcodes_init est la fonction dâencapsulation qui est reliĂ©e à « init » pour sâassurer que le code court est enregistrĂ© et exĂ©cutĂ© seulement aprĂšs que WordPress a fini de se charger. La fonction add_action() intĂ©grĂ©e Ă WordPress rend cela possible.
getdate() est une fonction PHP qui renvoie un tableau dâinformations sur la date de lâhorodatage actuel. La clĂ© de lâannĂ©e contient la valeur de lâannĂ©e en cours (sous la forme dâune chaĂźne de 4 chiffres). Ainsi, getdate() [âyearâ] renvoie lâannĂ©e en cours. Ce rĂ©sultat est exactement ce que nous voulons.Enregistrez votre fichier dâextension. Il est maintenant temps de vĂ©rifier si le code court fonctionne comme prĂ©vu.
Ajoutez le code court nâimporte oĂč dans votre site (page, article, widget de barre latĂ©rale, etc.). Je lâajoute au widget Texte de la barre latĂ©rale de mon site.
Tester le code court personnalisĂ© en lâajoutant au site. Et comme prĂ©vu, il fonctionne parfaitement.
Affichage du code court de lâannĂ©e FĂ©licitations pour avoir atteint votre premiĂšre Ă©tape !
Le code court que vous venez de crĂ©er nâa pas de variables $attributes ou $content associĂ©es. Vous apprendrez Ă les utiliser dans les exemples suivants.
Exemple 2 : Code court pour un bouton dâappel Ă action CrĂ©ons un code court de bouton dâappel Ă action personnalisable. Ce sera aussi une fermeture automatique (dĂ©solĂ© $content , vous devez attendre la prochaine).
Je veux que les utilisateurs puissent personnaliser la taille et la couleur du bouton dâappel Ă action avec les attributs du code court.
Comme le rĂ©sultat final est un Ă©lĂ©ment de bouton, ses attributs HTML tels que href , id , class , target & label peuvent ĂȘtre utilisĂ©s pour le personnaliser facilement.
Vous pouvez utiliser les attributs id et class pour styliser le bouton, car ce sont tous deux des sélecteurs CSS courants.
Je nâemballe pas ma fonction de gestionnaire ici pour que les choses restent simples Ă expliquer.
/**
* [cta_button] returns the HTML code for a CTA Button.
* @return string Button HTML Code
*/
add_shortcode( 'cta_button', 'salcodes_cta' );
function salcodes_cta( $atts ) {
$a = shortcode_atts( array(
'link' => '#',
'id' => 'salcodes',
'color' => 'blue',
'size' => '',
'label' => 'Button',
'target' => '_self'
), $atts );
$output = '<p><a href="' . esc_url( $a['link'] ) . '" id="' . esc_attr( $a['id'] ) . '" class="button ' . esc_attr( $a['color'] ) . ' ' . esc_attr( $a['size'] ) . '" target="' . esc_attr($a['target']) . '">' . esc_attr( $a['label'] ) . '</a></p>';
return $output;
}
Wouah, il y a beaucoup de choses Ă dĂ©baller ici. Je vais vous lâexpliquer ligne par ligne, pour que vous puissiez comprendre comment cela fonctionne.
Nous avons abordé la fonction add_shortcode() et son fonctionnement dans la section précédente.
shortcode_atts() est une fonction WordPress qui combine les attributs de code court de lâutilisateur avec des attributs connus. Il remplit les valeurs par dĂ©faut si nĂ©cessaire (vous pouvez Ă©galement les dĂ©finir vous-mĂȘme). Le rĂ©sultat sera un tableau contenant toutes les clĂ©s des attributs connus, fusionnĂ©es avec les valeurs des attributs de codes courts dĂ©finis par lâutilisateur.
Dans la fonction de gestion des codes courts, nous dĂ©finissons une variable ($a ) et lâaffectons au tableau renvoyĂ© par shortcode_atts() . Nous attribuons aux attributs leurs valeurs par dĂ©faut avec la syntaxe : âattributeâ => âdefault-valueâ . Par exemple, dans le code ci-dessus, nous dĂ©finissons la valeur par dĂ©faut de lâattribut label au bouton avec la syntaxe âlabelâ => âButtonâ.
Nous pouvons extraire les valeurs de chaque clĂ© dâattribut avec la syntaxe PHP pour les tableaux : $a[âattributâ] .
La variable $output stocke le code HTML de lâĂ©lĂ©ment bouton (balise <a> avec la classe âbuttonâ). Câest la chaĂźne qui est finalement renvoyĂ©e par la fonction. Si vous souhaitez que le lien par dĂ©faut soit lâURL de la page dâaccueil du site, vous pouvez utiliser la fonction WordPress home_url() .
Essayons dâutiliser le code court tel quel, sans aucun attribut dĂ©fini, et voyons ce qui en ressort.
Jâajoute le code court Ă un widget de texte de la barre latĂ©rale pour le tester. Si vous vous demandez Ă quoi servent les doubles crochets ([[ cta_button]] ), ils sâappellent codes courts dâescape . Ils vous aident Ă afficher tout code court enregistrĂ© sur votre site sous forme de texte normal, comme dans lâimage ci-dessous.
Affichage du code court du bouton dâappel Ă action montrant quâil fonctionne parfaitement comme prĂ©vu La sortie HTML du bouton dâappel Ă action sans attributs. Les utilisateurs peuvent personnaliser la taille et la couleur du bouton Ă lâaide du code court. Nous avons dĂ©jĂ dĂ©fini leurs valeurs par dĂ©faut dans la fonction de traitement, mais nous devons inscrire et faire figurer la feuille de style dans la liste des ressources disponibles. Cette feuille de style doit comporter toutes les classes dĂ©finies dans le code court.
Vous pouvez Ă©galement dĂ©finir ces classes dans la feuille de style globale de votre thĂšme, mais il est recommandĂ© de les charger sĂ©parĂ©ment. Cela garantit que mĂȘme si vous change z ou mettez Ă jour votre thĂšme WordPress , ces classes se chargeront toujours avec le code court.
/** Enqueuing the Stylesheet for the CTA Button */
function salcodes_enqueue_scripts() {
global $post;
if( is_a( $post, 'WP_Post' ) && has_shortcode( $post->post_content, 'cta_button') ) {
wp_register_style( 'salcodes-stylesheet', plugin_dir_url( __FILE__ ) . 'css/style.css' );
wp_enqueue_style( 'salcodes-stylesheet' );
}
}
add_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');
La fonction salcodes_enqueue_scripts() définit la variable globale $post , puis confirme deux conditions via :
is_a() : vĂ©rifie si $post est une instance de lâobjet Il sâagit de tous les types dâarticles dans WordPress.
has_shortcode() : vĂ©rifie si le contenu de lâarticle contient le code court [cta_button]. Si les deux conditions sont remplies, la fonction enregistre et met en file dâattente la feuille de style style.css incluse dans le dossier CSS. La fonction plugin_dir_url( $file ) permet dâobtenir facilement lâURL du rĂ©pertoire de lâextension.
Je ne vous montrerai pas le code CSS ici, mais vous pouvez le trouver dans le code source Ă la fin de cette section.
Enfin, testons le code court [cta_button] en lâajoutant au contenu de lâarticle :
Remarquez le lien personnalisĂ©, la couleur, la taille et les attributs du libellĂ©. Lâimage ci-dessous montre lâaspect du bouton dâappel Ă action sur lâinterface publique :
Le bouton dâappel Ă action a maintenant une nouvelle URL, une nouvelle couleur, une nouvelle taille et un nouveau libellĂ©. Maintenant que vous avez appris Ă dĂ©finir des attributs personnalisĂ©s et Ă inclure des styles, vous pouvez ajouter diverses autres fonctionnalitĂ©s Ă votre code court de bouton dâappel Ă action. Par exemple, vous pouvez donner Ă vos utilisateurs la possibilitĂ© dâajouter des animations, des effets de survol et divers autres styles de boutons.
Exemple 3 : Code court utilisant $content. Pour notre dernier exemple, construisons un code court appelé [boxed] qui affiche tout contenu entre ses balises dans une boßte avec des titres colorés.
Commençons par enregistrer le code court et définir sa fonction de gestionnaire.
/**
* [boxed] returns the HTML code for a content box with colored titles.
* @return string HTML code for boxed content
*/
add_shortcode( 'boxed', 'salcodes_boxed' );
function salcodes_boxed( $atts, $content = null, $tag = '' ) {
$a = shortcode_atts( array(
'title' => 'Title',
'title_color' => 'white',
'color' => 'blue',
), $atts );
$output = '<div class="salcodes-boxed" style="border:2px solid ' . esc_attr( $a['color'] ) . ';">'.'<div class="salcodes-boxed-title" style="background-color:' . esc_attr( $a['color'] ) . ';"><h3 style="color:' . esc_attr( $a['title_color'] ) . ';">' . esc_attr( $a['title'] ) . '</h3></div>'.'<div class="salcodes-boxed-content"><p>' . esc_attr( $content ) . '</p></div>'.'</div>';
return $output;
}
$content = null : ceci enregistre le code court comme un type dâencapsulation. Vous pouvez utiliser la variable $content dans votre fonction de gestion pour modifier votre sortie comme vous le souhaitez.
$tag = « : ceci dĂ©finit la variable $tag du code court. Ce nâest pas nĂ©cessaire dans cet exemple, mais câest une bonne pratique de lâinclure.Dans cet exemple, nous modifions le contenu en utilisant des styles CSS en ligne.
Les styles de toutes les classes utilisĂ©es Ă lâintĂ©rieur du code court sont enregistrĂ©s et mis en file dâattente comme nous lâavons fait dans lâexemple de code court prĂ©cĂ©dent.
Mais le fait que deux codes courts utilisent la mĂȘme feuille de style signifie que vous devez la charger si lâun dâeux est utilisĂ©. Mettons donc Ă jour la fonction salcodes_enqueue_scripts() :
/** Enqueuing the Stylesheet for Salcodes */
function salcodes_enqueue_scripts() {
global $post;
$has_shortcode = has_shortcode( $post->post_content, 'cta_button' ) || has_shortcode( $post->post_content, 'boxed' );
if( is_a( $post, 'WP_Post' ) && $has_shortcode ) {
wp_register_style( 'salcodes-stylesheet', plugin_dir_url( __FILE__ ) . 'css/style.css' );
wp_enqueue_style( 'salcodes-stylesheet' );
}
}
add_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');
$has_shortcode  : une variable dĂ©finie par lâutilisateur qui vĂ©rifie si lâun des codes courts existe sur la page ou lâarticle. Le || (opĂ©rateur OR) rend cela possible.Maintenant, prenons notre code court [boxed] .
Ajoutez le code court boxed ainsi que les attributs title, title_color et color. La capture dâĂ©cran ci-dessous affiche le rĂ©sultat que nous obtenons.
Une jolie boĂźte nâest pas si difficile Ă obtenir aprĂšs tout ! Maintenant que vous avez appris Ă faire vos propres codes courts, vous pouvez quitter [boxed] et y donner votre propre tournure. Nâoubliez pas de partager vos crĂ©ations avec nous !
Si vous le souhaitez, vous pouvez tĂ©lĂ©charger le code source de lâextension de code court ici .
Codes courts de WordPress : Avantages et inconvĂ©nients Les avantages Les codes courts simplifient lâajout de fonctionnalitĂ©s complexes dans les sites WordPress. Vous pouvez ajouter presque tout en saisissant une seule ligne de code.
Les codes courts automatisent le flux de dĂ©veloppement. Ils Ă©liminent la nĂ©cessitĂ© dâĂ©crire des scripts complexes chaque fois que lâon veut insĂ©rer un certain Ă©lĂ©ment.
Les codes courts sont plus conviviaux que lâajout de code HTML ou de scripts PHP.
Les codes courts peuvent ĂȘtre regroupĂ©s dans des extensions. MĂȘme si vous mettez Ă jour WordPress ou si vous modifiez/mettez Ă jour votre thĂšme, les codes courts resteront valables et continueront Ă fonctionner comme avant.
Le regroupement des codes courts Ă lâintĂ©rieur des extensions les rend faciles Ă utiliser sur plusieurs sites WordPress. Si vous ĂȘtes un dĂ©veloppeur qui gĂšre de nombreux sites, le fait dâavoir tous vos codes courts personnalisĂ©s prĂȘts Ă lâemploi est un atout majeur.
Comme les codes courts acceptent Ă©galement des attributs, les utilisateurs peuvent modifier le comportement du mĂȘme code court en modifiant simplement les options de ses attributs. Les inconvĂ©nients Lâutilisation des codes courts nâest pas intuitive pour lâutilisateur final, surtout si un grand nombre dâentre eux sont utilisĂ©s sur une page. Dans ce cas, ils sont plus adaptĂ©s aux dĂ©veloppeurs.
Il est difficile de dire ce quâun code court fait simplement en le regardant. LâĂ©quipe centrale de WordPress les a judicieusement nommĂ©s « mystery meat embed codes » pour cette raison prĂ©cise.
Les codes courts qui sont intégrés avec des thÚmes cesseront de fonctionner si vous changez de thÚme.
Les codes courts sont ambigus quant Ă leur syntaxe. Par exemple, certains dâentre eux sont favorables Ă la fermeture facultative, de sorte que vous pouvez les utiliser soit comme fermeture automatique, soit comme fermeture, voire les deux sâils sont emboĂźtĂ©s. Vous pouvez deviner comment cela peut devenir trĂšs rapidement super confus.
Les codes courts peuvent casser le HTML en raison de balises conflictuelles ou de problĂšmes dâinteropĂ©rabilitĂ©. Il nâest jamais bon de les voir sur lâinterface publique dâun site.
Les codes courts ajoutent une charge supplĂ©mentaire sur votre serveur. Plus le nombre de codes courts sur votre page ou vos articles augmente, plus cette charge augmente. Trop de codes courts peuvent amener votre site web Ă ramer (par exemple, lâaffichage de la plupart des constructeurs de pages ). Codes courts et blocs Gutenberg Lâintroduction de Gutenberg a rĂ©duit lâintĂ©rĂȘt des codes courts. Les utilisateurs peuvent dĂ©sormais ajouter des blocs directement Ă partir de lâinterface de lâĂ©diteur, plutĂŽt que de sâoccuper des balises de codes courts, aussi simple soient-elles.
Et si vous souhaitez ajouter des codes courts, Gutenberg propose mĂȘme un bloc dĂ©diĂ© pour ajouter des codes courts. Les blocs sont les nouveaux codes courts.
« Si vous pouvez le faire avec un code court, vous pouvez le faire avec un bloc. » â James Huff, ingĂ©nieur du bonheur chez Automattic
Cela explique pourquoi tous les codes courts populaires sont convertis en blocs . De nombreux dĂ©veloppeurs de WordPress ont dĂ©cidĂ© de faire en sorte que leurs produits et services fonctionnent exclusivement avec lâĂ©diteur de bloc (Gutenberg).
Mais cela ne signifie pas que câest la fin du monde pour les codes courts. LâĂ©quipe centrale de WordPress a promis de nombreuses amĂ©liorations Ă lâĂ©diteur de blocs, que vous pouvez voir dans Twenty Twenty , mais dâici lĂ , les codes courts sont lĂ pour rester !Faire plus avec moins, dites-vous ? C’est possible avec les codes courts de WordPress ! Apprenez ce que c’est et comment crĂ©er les vĂŽtres avec ce guide en profondeur. La vie est trop courte pour ne pas utiliser de codes courtsăăđȘCLICK TO TWEET
RĂ©sumĂ© Il est facile dâajouter des fonctionnalitĂ©s complexes nâimporte oĂč dans votre site WordPress, grĂące Ă des codes courts. Ils donnent aux utilisateurs des balises faciles Ă taper qui peuvent ĂȘtre utilisĂ©es sans avoir Ă se soucier de lâutilisation de codes complexes.
Bien quâil nây ait pas de raccourcis dans la vie, il y a certainement de nombreux codes courts Ă utiliser dans WordPress. Mes prĂ©fĂ©rĂ©s sont Shortcodes Ultimate et Shortcodes by par Angie Makes .
Et si vous ne trouvez pas celui que vous cherchez, vous pouvez en crĂ©er un vous-mĂȘme.
Vous pouvez mĂȘme prendre un raccourci pour crĂ©er votre code court personnalisĂ© en utilisant lâextension Shortcoder . Elle sâoccupe de lâessentiel pour vous. Et nâoubliez pas : la vie est courte, utilisez les codes courts !