Développement professionnel WordPress Stratégies

Travailler dans la communauté WordPress est à la fois une bénédiction et une malédiction. En raison de sa nature open source, nous disposons d'une plate-forme fantastique sur laquelle construire des sites Web, des thèmes, des plugins et même des applications. Il comprend une communauté intelligente, une documentation riche et des normes visant à fournir le chemin écrire du code pour cela et le chemin construire des outils autour.

Dans le même temps, la nature open source de WordPress, ainsi que les langages avec lesquels il est construit, permettent à quiconque d’envoyer son travail indépendamment du fait que celui-ci soit conforme à n’importe quel standard ou qu’il utilise tout type de meilleure pratique. Pour de nombreux utilisateurs, ils ne savent pas ce qui se passe sous le capot. Si le produit fonctionne, ils sont contents.

En tant que personnes qui sont sérieuses dans leur métier, nous ne pouvons absolument pas nous contenter de "le faire simplement fonctionner". nous avoir se soucier de ce qui est sous le capot.

Si vous êtes un développeur WordPress sérieux, vous avez probablement déjà une méthode de travail, mais si vous commencez à peine ou souhaitez vous définir en tant que développeur WordPress professionnel, il existe des stratégies, des environnements et des outils. que vous pouvez utiliser qui peut aider.

Dans cette série de trois articles, nous allons examiner exactement ce que sont ces règles et comment elles s’appliquent à notre travail de projet. Tout d'abord, nous allons commencer avec des stratégies.


Organisation du fichier

Une partie importante du logiciel de construction le maintient effectivement après le lancement initial. La vérité est qu’on consacre plus de temps à la maintenance des projets qu’à leur construction. C'est logique, non? Un produit existe bien plus longtemps qu'il n'en faut pour le créer et, en supposant qu'il soit de haute qualité, les utilisateurs vont rechercher les bogues et demander de nouvelles fonctionnalités..

Malheureusement, une partie importante du temps de maintenance est consacrée à la résolution d'un bogue ou à l'ajout rapide d'une nouvelle fonctionnalité. Cette opération est souvent effectuée de manière à se concentrer davantage sur la réalisation que sur la réalisation correcte. Ce n’est pas complètement faux non plus: lorsqu'un produit est directement lié aux résultats financiers d'une entreprise, le temps est une priorité.

Mais il y a des choses qui peuvent être faites pendant le développement initial qui peuvent faire beaucoup pour rendre plus facile la maintenance d'un produit après son lancement..

Pour les thèmes

WordPress Codex fournit un guide complet sur la création de thèmes. Il couvre les guides de feuilles de style, les fichiers de modèles, les informations JavaScript, les instructions de test, les listes de contrôle et diverses références. Même si vous construisez des thèmes, je vous recommande vivement de consulter cette liste de temps en temps..

En plus de suivre les directives de base, il existe d'autres moyens d'améliorer la maintenance. En supposant que vous suiviez les directives du Codex pour la création de thèmes, tenez compte des points suivants en ce qui concerne certains de vos actifs et dépendances..

Les atouts

Une des choses que je fais pour chacun de mes projets est de m'assurer de disposer de répertoires spécifiques pour les actifs en dehors des fichiers normaux nécessaires au développement du thème. Par cela, je veux dire que j'ai des répertoires spécifiques pour:

  • Images
  • Feuilles de style
  • JavaScript
  • Fichiers de langue
  • Bibliothèques, telles que des codes plus modulaires tels que des plugins ou des classes PHP
  • … etc

Certes, chaque thème nécessite au moins une seule feuille de style, mais supposons que vous fournissiez des feuilles de style spécifiquement pour le tableau de bord administratif. Pour la maintenance, il est préférable de les séparer que dans une seule feuille de style, puis de laisser un outil les combiner avant de les publier..

Nous allons jeter un oeil à l'outillage pour exactement cela dans le dernier article de la série.

Quel que soit l'endroit où vous vous retrouvez, planifier un peu à l'avance peut s'avérer très utile pour disposer d'un ensemble d'actifs bien organisé..

Conventions de nommage

Alors que nous examinons la meilleure façon d’organiser nos divers actifs, les conventions de dénomination peuvent aider à fournir un niveau de clarté et à fournir une norme à suivre par tous les fichiers associés. Par exemple, dans chacun de mes projets, je réalise généralement les tâches suivantes:

  • Images liés à un modèle spécifique sont précédés du nom du modèle, par exemple: full-width.background.png
  • JavaScript
    • Pour le tableau de bord administratif, sera préfixé par admin et seront nommés en fonction de la page pour laquelle ils sont chargés: admin.edit-post.js, admin.users.js.
    • Pour le thème, ou les zones faisant face au public, seront préfixés par thème et nommé pour le modèle sur lequel ils sont chargés: theme.about.js.
  • Feuilles de style sont nommés comme JavaScript
    • Les feuilles de style spécifiques à l’administration sont précédées du préfixe admin et nommé en fonction de la page sur laquelle ils sont chargés: admin.widgets.css
    • Les feuilles de style spécifiques à un thème sont nommées de la même manière, en ce sens qu'elles sont nommées en fonction du modèle sur lequel elles sont chargées: theme.about.css.

Bien sûr, il existe des codes JavaScript et des feuilles de style universels qui sont appliqués tout au long du thème. Dans ce cas, je maintiens simplement un ensemble de admin.css et style.css des dossiers.

Pour les plugins

La plupart des développeurs WordPress savent que les plugins doivent être agnostiques par thème. Autrement dit, ils ne doivent pas dépendre d'une caractéristique d'un thème donné ni imposer aucune de leurs feuilles de style ou JavaScripts au thème existant, à l'exception de leur propre caractéristique spécifique..

En plus de cela, il y a deux façons de développer des plugins:

  • L'API Plugin
  • L'API Widget

À cette fin, quelques stratégies peuvent être utilisées lors de l'écriture de vos plugins pour vous assurer que les feuilles de style, JavaScript, les images et autres éléments ne sont pas en conflit avec le thème existant..

Ne pas mélanger et assortir

Quand il s'agit d'écrire des plugins, les différentes API facilitent généralement le mélange et la correspondance des langues que vous utilisez pour construire votre plugin. J'entends par là qu'il est tout à fait possible d'inclure tous les styles, JavaScripts, HTML et PHP dans un seul fichier, puis de l'expédier..

Mais je ne suis pas fan de ça.

En général, chaque langue sert un objectif spécifique et, à cause de cela, j'essaie de conserver chaque langue dans son propre fichier autant que possible. Considère ceci:

  • HTML est utilisé pour décrire les données rendues dans le navigateur.
  • CSS est utilisé pour styler ou présenter les données rendues dans le navigateur.
  • JavaScript est utilisé pour gérer les événements et relayer les informations vers et depuis le navigateur et le serveur.
  • PHP est destiné à fonctionner sur le serveur

En tant que tel, j'estime qu'il est plus logique de garder les fichiers séparés pour que vous sachiez où vous concentrer lorsque un problème survient ou qu'il est temps d'introduire une nouvelle fonctionnalité..

Cela ne veut pas dire que PHP ne sera pas écrit dans votre balisage de temps en temps, ni que vous ne créerez pas dynamiquement d'éléments HTML côté serveur, mais qu'il est censé fournir une base à partir de laquelle vous organisez votre travail..

Séparation des préoccupations

En plus de m'assurer que chaque ensemble de feuilles de style et de fichiers JavaScript est clairement nommé, j'ai tendance à suivre la même structure que celle utilisée pour les thèmes, à savoir nommer le code spécifique à l'administrateur précédé du préfixe. admin et thème ou un code spécifique au public avec afficher.

C'est une stratégie simple, mais elle permet d'optimiser l'emplacement de vos fichiers et de gérer les problèmes tels qu'ils se présentent une fois que votre travail est dans la nature..

Un dernier mot sur la stratégie

Le point couvrant ceci est de ne pas imposer mon une manière d’organiser des fichiers dans votre système ou même de dire que c’est une façon standard de le faire. Il est destiné à fournir un point de départ pour lequel vous pouvez maintenir vos projets..

En fin de compte, le but est de minimiser autant que possible la maintenance. Disposer de conventions de dénomination clairement définies et d’un standard d’organisation vous permet de savoir exactement où et comment placer vos fichiers sans avoir à deviner, et cela permet à vos collaborateurs et / ou aux membres de votre équipe de savoir où se concentrer pour repérer les problèmes dès qu’ils arrivent..


Documents de référence

L'un des défis auxquels sont confrontés les développeurs est de s'assurer qu'ils connaissent bien les moyens de tirer parti de la plateforme sur laquelle ils travaillent..

Pour la plupart, chaque langage, framework et bibliothèque inclut une forme de documentation et WordPress n’est pas différent. Le problème est que WordPress est composé de plusieurs éléments différents - non seulement l'application est construite avec PHP, mais il existe des API spécifiques à l'application, ainsi que des bibliothèques telles que jQuery qu'il est nécessaire d'avoir comme références..

Comme il faut beaucoup de temps pour se familiariser avec les tenants et les aboutissants de chaque langue, application et bibliothèque, les développeurs WordPress professionnels disposent généralement de références facilement accessibles. Pour les développeurs WordPress, les références suivantes sont extrêmement précieuses.

  • PHP. De toute évidence, la langue dans laquelle WordPress est écrit est précieuse. Avoir le manuel à portée de main pour la révision des fonctions et des classes est important, en particulier si vous travaillez en dehors de l'API WordPress standard..
  • Normes de codage. L’un des plus gros problèmes du développement WordPress est que les développeurs n’appliquent souvent pas les normes de codage à leur travail (j’en étais aussi coupable!). En nous conformant à une norme, nous veillons à ce que tout notre code ait la même apparence, ce qui nous permettra de contribuer plus facilement à la communauté si nous le souhaitons. Si rien d'autre, cela crée un code vierge.
  • API WordPress. Cela devrait être une évidence, mais il est nécessaire pour le développement professionnel de s'assurer que vous travaillez correctement avec les différents objets WordPress. Ce n’est pas parce que vous pouvez le contourner que vous devriez. Les chances sont, si il y a une méthode dont vous avez besoin, il est déjà disponible dans le cadre de l'API de base.
  • API jQuery. jQuery est la bibliothèque JavaScript fournie avec WordPress et utilisée pour les fonctionnalités principales à la fois dans le tableau de bord et dans de nombreux thèmes et plug-ins. Il est préférable de ne pas essayer d’apporter votre propre variante de JavaScript, mais de vous en tenir à ce qui est fourni..

Pour l'essentiel, c'est tout - marquez-les ou mettez-les facilement à disposition dans votre IDE (s'il le supporte), passez du temps dans chacun d'eux et vous serez sur la bonne voie pour davantage de pratiques de développement professionnel..

En ce qui concerne les stratégies, cela couvre tout. En un mot, définissez clairement votre façon d'organiser et de nommer vos fichiers, veillez à suivre les meilleures pratiques de l'API WordPress principale et veillez à vous référer aux divers documents de l'API de langage lors de la création de votre travail. une bien meilleure position que de simplement construire votre travail à l'improviste.

.