Les codes courts affectent-ils les performances? chaque plugin utilisant cette technique doit analyser le contenu de publication/page à la recherche du shortcode? Si tel est le cas, il serait préférable de limiter autant que possible les plugins basés sur un shortcode?
Vous devez examiner la situation de plusieurs points de vue, puis peser les chances les uns par rapport aux autres.
En général, les codes courts seront plus lents ( nous parlons ici en millisecondes ) car ils doivent être analysés et traités par le gestionnaire de codes courts.
[my_shortcode]
in post editorLes codes courts sont en général très utiles et l'emportent généralement sur le fait qu'ils ont tendance à être un peu plus lents que le simple codage en dur d'une fonction et son appel dans le modèle souhaité. Les shortcodes sont portables ( c’est pourquoi ilsdoivent êtredans un plugin ), ce qui les rend excellents pour une utilisation entre thèmes. De plus, vous n'avez pas besoin de modifier un modèle pour faire quelque chose de spécial dans un modèle, vous pouvez simplement déposer le shortcode dans la méta-boîte de contenu de l'éditeur de publication et votre travail terminé.
Pour des raisons de commodité et d’utilisation, les codes abrégés sont définitivement la solution, et tous les aspects positifs l'emportent sur la perte en quelques millisecondes à peine du fait de ne pas utiliser une fonction de rappel spaghetti seule.
do_shortcode()
codé en dur dans un modèleC’est là que je trace la ligne. Si vous devez appeler un shortcode via do_shortcode()
, vous le faites mal. Comme je l'ai dit, les codes courts sont un peu plus lents, il serait donc préférable d'écrire une fonction simple et de la déposer dans un plugin ( recommandé pour la portabilité ) ou functions.php
, puis d'appeler la fonction. dans votre modèle.
Dans les deux cas, vous devrez modifier le modèle pour appeler votre code abrégé ou la fonction ou même la classe que vous avez créée. C'est pourquoi, à mon humble avis, vous ne devriez pas utiliser de codes abrégés, mais plutôt une simple fonction ou une classe un peu plus rapide.
Devez-vous rester à l’écart ou limiter l’utilisation des codes courts? La réponse est simple, tout dépend de l'utilisation décrite ci-dessus. Juste une note finale, si vous appelez plusieurs codes abrégés dans une page, essayez de les limiter en combinant les fonctionnalités dont vous avez besoin dans un code abrégé solide et astucieux, capable de faire tout ce que vous voulez.
Avant de poser mon stylo, je veux vous laisser avec cela, téléchargez et installez le Query Monitor plugin. Personnellement, j’ai le sentiment que chaque développeur devrait avoir ce plugin installé sur son environnement de test local. Ce plugin vous dira avec excitation combien de requêtes sont faites, le temps nécessaire pour faire ces requêtes, et il vous dira aussi combien de temps il a fallu pour charger une page spécifique.
Il y a plusieurs aspects et comme toujours, la performance est une chose à prendre dans son contexte. La réponse de Pieter vous en donne une: "avez-vous même un (meilleur) moyen d'obtenir les fonctionnalités requises". au-delà, il y a des faits qui méritent d'être gardés à l'esprit
Si vos codes abrégés ne sont pas appelés, cela signifie qu'ils ne s'appellent pas leurs fonctions et, par conséquent, cela n'affectera pas les performances de votre site Web.
Vous pouvez également utiliser des classes et des variables statiques pour réduire la charge de votre site. Chaque shortcode utilisera la fonction une seule fois, indépendamment du nombre de fois que vous l’appelez.