Mon parcours vers la création d'un plugin WordPress avec ChatGPT : 120 heures de travail, aucune expérience préalable

Publié: 2024-08-28

Je vais être honnête : je pensais en fait pouvoir créer un plugin WordPress avec ChatGPT en seulement quelques heures. Ou du moins, c'est ce que tous les tutoriels YouTube et les fils de discussion Twitter m'ont amené à croire.

Mais laissez-moi vous dire que ces histoires ont laissé de côté quelques détails cruciaux – environ 120 heures de détails, pour être exact. Oui, c'est le temps qu'il m'a fallu pour construire le plugin du début à la fin : 120 heures !

Pour le contexte, je n'avais aucune expérience préalable en matière de développement de plugins ou de WordPress, mais j'ai quand même décidé de me lancer. Et même si j’ai adoré le défi, c’était beaucoup plus difficile que prévu. À chaque étape, je me suis heurté à un obstacle après l’autre, dont beaucoup dont j’ignorais même l’existence. C’était frustrant, mais aussi une énorme – énorme (!) – expérience d’apprentissage.

En supposant que vous envisagez de suivre mes traces, je vous invite fortement à lire cet article dans son intégralité au préalable. Je ne dis pas cela comme une sorte d’auto-promotion. Je le dis parce que cela vous fera véritablement économiser des heures, voire des jours, de travail supplémentaire. Il y a tellement de choses sur lesquelles je suis tombé par hasard au cours de ce processus que je n'avais aucune idée de leur importance jusqu'après coup. Malheureusement, cela a conduit à d’innombrables révisions de code (remplies de beaucoup de frustration) qui auraient pu être évitées. En lisant ceci, vous n'aurez plus ce problème.

Table des matières
Il m'a fallu 120 heures pour créer un plugin #WordPress avec #ChatGPT sans aucune expérience préalable 🤯
Cliquez pour tweeter

À qui s'adresse-t-il et n'est-il pas destiné 🙋‍♂️

En fonction de votre parcours et de vos compétences, vous vous demandez peut-être si vous êtes « suffisamment qualifié » pour ce faire. Je dirai ceci:

Bien que vous n'ayez pas besoin d'avoir des connaissances préalables en codage, vous devez être enthousiaste à l'idée d'apprendre du code et du processus général de développement d'un plugin. Il y a beaucoup de phases à franchir, et souvent, une phase n'a rien à voir avec l'autre en termes de compétences (ou même d'outils) dont vous avez besoin pour la réaliser. En bref, soyez prêt à apprendre – BEAUCOUP .

Selon la nature de votre plugin et vos objectifs ultimes, cela peut facilement vous prendre un mois ou plus pour arriver à un produit final.

Avoir un sens aigu des détails et reconnaître les modèles sera très utile, tout comme savoir ce que font PHP, JavaScript et CSS. Vous n'avez pas besoin de savoir coder avec eux, mais comprendre leur objectif et comment ils sont utilisés sera un avantage.

Si aucun des éléments ci-dessus ne vous décrit – en particulier la volonté d'apprendre – et que vous recherchez une solution simple et rapide, alors ce n'est pas pour vous. Ce n'est ni rapide, ni facile. Mais c’est possible si vous faites l’effort.

Si cela vous convient, commençons.

Première phase : cartographiez votre plugin en détail 📝

La toute première question que vous devez vous poser – et répondre – est quel type de plugin je veux créer et qu’est-ce que je veux qu’il fasse ?

Vous pourriez être tenté de vous précipiter pour pouvoir commencer à construire et à coder, mais je vous invite à prendre votre temps. Ce que vous faites ici jettera les bases de vos invites et vous permettra de construire de manière organisée, plutôt que d'ajouter des éléments à la volée. Pour traverser efficacement cette phase, considérez les éléments suivants :

  • Quelles fonctions souhaitez-vous que votre plugin ait ?
  • À quoi voulez-vous que le côté wp-admin ressemble ?
  • Créez des wireframes ou des organigrammes pour visualiser le flux de travail du plugin.
  • Cartographiez-le et décrivez-le dans les moindres détails.
  • Décidez si vous le souhaitez pour un usage privé ou si vous souhaitez le rendre disponible dans le référentiel WordPress pour un accès public.

Fonctions

Lisez la répartition 👇🏻

Commencez par répertorier toutes les fonctionnalités que vous souhaitez que votre plugin ait. Ne vous retenez pas ici – notez tout, même si vous ne savez pas encore comment le mettre en œuvre. Par exemple, lorsque je planifiais mon plugin basé sur un shortcode, je voulais qu'il puisse faire ce qui suit :

  • Texte flou
  • Texte brouillé
  • Ajouter une info-bulle au texte
  • Agrandir ou réduire le texte
  • Ajouter un arrière-plan lumineux au texte
  • Surligner le texte avec une couleur d'arrière-plan
  • Fondu dans le texte
  • Ajouter un lien audio cliquable à un morceau de texte

Votre liste peut être plus longue ou plus courte, mais l’essentiel est d’être aussi complète que possible. Pensez à ce qui rendrait votre plugin vraiment utile et unique.

L'administrateur wp

Lisez la répartition 👇🏻

Ensuite, réfléchissez à la manière dont vous souhaitez que votre plugin apparaisse et fonctionne dans la zone d’administration de WordPress. Cela comprend :

  • Pages de paramètres : quelles options souhaitez-vous proposer ? Comment allez-vous les organiser ?
  • Menus : Où apparaîtra votre plugin dans le menu admin ? Aura-t-il des sous-menus ?
  • Métaboxes : Si votre plugin interagit avec des publications ou des pages, aura-t-il besoin de métaboxes personnalisées ?
  • Tableaux : si vous stockez des données, comment les afficherez-vous pour que l'administrateur puisse les examiner ?

Dans mon cas, j'ai opté pour une page de paramètres principale avec des onglets pour chacun de mes shortcodes, une page séparée pour la documentation, ainsi qu'une page avec un formulaire de contact au cas où les utilisateurs souhaiteraient me contacter. Voici ce que j'ai trouvé :

Paramètres des effets de texte géniaux dans wp-admin.

Malheureusement pour moi – mais pas pour vous car vous lisez ceci – c'est que j'étais tellement concentré sur la fonctionnalité frontale de mon plugin pendant la phase de planification, que j'ai complètement négligé le côté wp-admin.

Cela a pris plus de temps que si je l'avais planifié à l'avance, car je devais constamment réviser le code lorsque j'ai réalisé que ce que j'avais était incomplet ou avait une mauvaise UX. Si je l'avais cartographié à l'avance, ou mieux encore, si j'avais utilisé des wireframes, alors cette phase se serait déroulée beaucoup plus facilement, ce qui est une transition parfaite vers le point suivant.

Wireframes ou organigrammes

Lisez la répartition 👇🏻

Comme je viens de le mentionner, c'est quelque chose que je n'ai pas fait personnellement, mais j'aurais aimé le faire. Si vous envisagez de créer un plugin plus complexe, cette étape est cruciale. Vous n'avez pas besoin d'être un artiste : même des croquis grossiers peuvent être incroyablement utiles. Pensez à créer :

  • Wireframes de vos pages d'administration et de tous les éléments front-end
  • Organigrammes montrant comment les données circulent dans votre plugin
  • Cartes de parcours utilisateur pour comprendre comment les gens interagiront avec votre plugin

Bien que cela prenne également du temps, à mon avis, vous bénéficierez d'un gain de temps net global et d'un processus de construction beaucoup plus fluide lorsque vous passerez à l'étape de codage avec une présentation détaillée et précise de votre plugin.

Si vous ne savez pas par où commencer, consultez les modèles filaires gratuits de Figma.

Combinez tout et décrivez-le en détail

Lisez la répartition 👇🏻

Enfin, prenez tout ce qui précède et écrivez-le avec des détails atroces. Pour chaque fonctionnalité et élément d’interface, décrivez :

  • Exactement ce que tu veux qu'il fasse
  • Comment voulez-vous qu’il interagisse avec WordPress et d’autres parties de votre plugin

Lorsque vous réfléchissez à la manière dont vous souhaitez que votre plugin interagisse avec WordPress, les options ne sont pas illimitées, mais elles sont étendues. Par exemple, selon le type de plugin que vous allez créer, vous pourriez :

  • Utiliser des codes courts
  • Connectez-vous directement à l'éditeur de blocs
  • Ajouter des blocs supplémentaires
  • Ajouter des points de terminaison de l'API REST
  • Inclure des crochets
  • Créer des types de publication et des taxonomies personnalisés

Si vous ne disposez pas du vocabulaire technique nécessaire pour décrire ou comprendre ces mécanismes précis, pas de panique ! C'est parfaitement bien. Je les ai énumérés juste pour vous faire réfléchir au concept global. L’objectif principal est de créer une image aussi claire que possible de ce que vous souhaitez réaliser. De cette façon, lorsque vous invitez ChatGPT, tous ces éléments seront pris en compte lors de l'écriture de votre code.

Lorsque j'ai construit mon plugin, j'ai d'abord tenté de me connecter directement à l'éditeur de blocs pour les fonctionnalités frontales. Malgré quelques premiers progrès, j’ai finalement heurté un mur insurmontable. Après environ deux jours de dépannage incessant mais infructueux, j’ai fini par me tourner vers les codes courts. Cette approche s’est avérée beaucoup plus gérable pour un débutant comme moi. Vous pourriez vous retrouver dans une situation similaire, alors gardez cela à l’esprit.

La dernière chose que je voudrais mentionner ici est que ces mécanismes ne s'excluent généralement pas mutuellement . De nombreux plugins, même ceux développés par des débutants, combinent plusieurs mécanismes. Selon toute vraisemblance, à moins que vous ne prévoyiez pas de zone de paramètres, vous finirez également par utiliser une approche hybride.

Utilisation privée vs accès public via le référentiel WordPress

Lisez la répartition 👇🏻

Il y a encore une décision que vous devriez prendre avant de passer à la phase deux. Cette décision dépend de la personne pour qui vous allez créer ce plugin.

Voulez-vous le réaliser uniquement pour vous (ou un client) ? Ou souhaitez-vous le soumettre au référentiel WordPress pour approbation afin qu’il soit disponible au grand public ?

Techniquement, vous n’avez pas encore besoin de prendre cette décision. Cependant, avec le recul, j’aurais aimé le faire plus tôt dans le processus. C'est pourquoi je vous recommande de le faire maintenant.

La raison en est que mon objectif depuis le début était de soumettre mon plugin au référentiel, mais j'ai initialement construit mon plugin sans suivre les normes de codage WordPress. Je me suis concentré uniquement sur la fonctionnalité et je l'ai amené à un point où cela fonctionnait sans bugs.

En conséquence, j’ai dû procéder à de nombreuses modifications supplémentaires du code pour que mon code soit conforme aux normes. Inutile de dire que cela a pris beaucoup de temps et aurait pu être évité.

Cela dit, même si vous envisagez de créer un plugin uniquement pour un usage privé, je recommanderais quand même de respecter les normes de codage. Cela réduira le risque de dysfonctionnement de votre plugin avec les versions ultérieures de WordPress. En termes de processus, la principale différence est que vous n'aurez pas besoin d'être aussi anal sur les aspects non fonctionnels des normes.

Par exemple, lorsque vous faites des commentaires en ligne comme // Use global default. vous devez mettre un point à la fin. Le point n'a aucun objectif fonctionnel, mais s'il manque, il sera signalé comme une « erreur » selon les normes. Pour une version privée, vous pouvez ignorer ce type « d’erreur ».

Phase deux : donnez à ChatGPT une invite détaillée pour commencer le développement 🗣️

L'idée principale ici est de donner à GPT un aperçu de votre plugin avec des instructions claires. De manière générale, je vous conseille d’éviter d’essayer de construire toute la maison en même temps. Il est préférable d'adopter une approche brique par brique.

Disons que vous deviez créer mon plugin à titre d'exemple.

Même s'il a huit effets, je recommanderais d'indiquer à GPT que vous souhaitez commencer avec un seul effet. Presque comme si vous construisiez un plugin à un effet au lieu d’un plugin à huit effets . Vérifiez ensuite que l'effet fonctionne, y compris la zone des paramètres du back-end. Corrigez tous les bugs et une fois que tout semble bon, ajoutez l'effet suivant. Suivez ensuite simplement ce processus, un par un.

La raison pour laquelle nous procédons de cette façon est que cela facilite la correction des bogues qui pourraient être introduits dans votre code à mesure que votre code gagne en complexité. Si GPT génère tout votre code en même temps et que beaucoup de choses ne fonctionnent pas, ce sera beaucoup plus difficile à corriger.

Vous souhaitez toujours donner à GPT un aperçu général de votre vision globale du plugin, mais terminez l'invite en vous concentrant d'abord sur quelque chose de spécifique.

Pour vous faire gagner du temps, j'ai créé un exemple de modèle que vous pouvez donner à ChatGPT pour vous aider à démarrer.

Les sections entre parenthèses [X] nécessitent votre contribution pour être complétées. Vous devrez peut-être ou non le modifier davantage, selon le type de plugin que vous envisagez de créer.

Si vous ne comprenez pas tout dans l’invite, ne vous inquiétez pas, moi non plus. Vous apprendrez au fur et à mesure du processus.

Mon invite 🤖

 I want to build a WordPress plugin called [name] that does the following: [General overview but don't give GPT the specifics yet] I'd like it to work via [Refer back to the section "combine everything and describe it in detail" from phase one; think about how you want your plugin to function - if you're not sure, then you can delete this part] . I would also like to create a settings menu in wp-admin so that users can [Explain what you want your settings menu to look like and do, including any specific UI/UX considerations; if you create any wireframes, upload those as well] I plan on using the following tools for this process: - Docker and/or Local by Flywheel {Choose one or use both} - Terminal (MAC) {if you're using a PC, substitute with Command Prompt} - Sublime Text - Chrome and Chrome inspector tool Also, I want to use GitHub for version control to track changes and collaborate effectively. I will use the default WordPress template provided by GitHub to generate the code for the .gitignore file. However, I will need your help to walk me through how to set up a repository and how to commit my files to it. For the main PHP file, the author name should be [your name] and the author URI should be [your website if you have one] . For any code you generate, please use tabs for indentation and not spaces. {important if you plan on submitting your plugin to the WordPress repository} If you need to enqueue any scripts, please ask me questions to help me figure out whether we should use conditional loading or if we should enqueue globally. In addition, when generating CSS, please follow BEM (Block Element Modifier) methodology. Let's begin with [insert which feature you'd like to build first] Please [Optional: help me setup Local by Flywheel and then] generate the initial PHP file and advise on next steps after that.

Après avoir fourni votre invite à ChatGPT, il vous guidera à travers le reste des étapes, que j'ai décrites ci-dessous. Il convient de noter qu'en fonction de l'humeur de ChatGPT ou de votre propre désir de suivre le processus tel que je l'ai présenté, la façon dont je liste tout peut ne pas être aussi linéaire qu'elle est présentée.

Pour vous donner une idée de ce que je veux dire, j’ai moi-même testé l’invite à trois reprises. En plus de m'aider à configurer Local by Flywheel et à générer le fichier PHP initial, il a choisi de suivre les autres étapes d'une manière différente à chaque fois.

Première tentative

Donner à ChatGPT l'invite initiale pour créer la première tentative de plugin.

Lors de ma première tentative, ChatGPT n'est pas allé au-delà de la génération du fichier PHP et m'a présenté deux options sur la façon dont j'aimerais procéder ensuite. Notamment, il a suivi les instructions concernant la mise en file d'attente des scripts avec chargement conditionnel et l'a également mentionné.

Deuxième tentative

La deuxième tentative a abouti au fichier PHP le plus simple, mais à la réponse globale la plus complète en termes de suivi des étapes. Il a immédiatement utilisé Terminal pour configurer les répertoires de projets et initialiser Sublime. Cela est même allé jusqu'à me coacher sur la façon de configurer le référentiel Git.

Donner à ChatGPT l'invite initiale pour créer la deuxième tentative de plugin.

Troisième tentative

La troisième tentative était quelque peu similaire à la première tentative. Cependant, contrairement à la première tentative, ChatGPT n'a pas configuré le chargement conditionnel pour les scripts et ne m'a pas non plus posé de questions à ce sujet. Il les a simplement générés comme globaux par défaut.

Donner à ChatGPT l'invite initiale pour créer la troisième tentative de plugin.

Les plats à emporter

La raison pour laquelle j'ai brièvement partagé ces trois tentatives avec vous était non seulement de renforcer ce que j'ai dit plus tôt sur le fait que le flux de travail ne serait pas nécessairement standardisé, mais également de souligner que l'invite s'adresse autant à vous qu'à GPT .

Ce que je veux dire, c'est que c'est à vous de faire attention à ce que ChatGPT fait – et ne fait pas – et de le remettre sur les rails s'il tombe en panne. Ainsi, au fur et à mesure que vous avancez dans ce voyage, n'oubliez pas de vous référer à l'invite ainsi qu'aux pointeurs que je partagerai un peu plus tard dans la section de débogage. Rappelez et réorientez ChatGPT pour qu'il fasse ce que vous voulez qu'il fasse autant que nécessaire.

Téléchargez mon plugin et testez-le 📥

Si vous souhaitez essayer la « version de travail » de mon plugin, le fichier zip est ci-dessous. Je mettrai à jour cela dans un avenir proche pour inclure la version du référentiel WP, mais cela vous permettra de l'utiliser pour le moment.

Télécharger le plugin Funky Text Effects

Troisième phase : outils, scripts, répertoires et Git 👩‍💻

Dans cette phase, vous allez jeter les bases de la création de votre plugin. C'est également là que la courbe d'apprentissage augmentera rapidement, surtout une fois que vous aurez commencé à installer des scripts et à utiliser Terminal (ou l'invite de commande si vous êtes sur un PC). Voici la répartition :

  • Choisissez l'outil d'environnement local que vous souhaitez utiliser (par exemple, Local by Flywheel, Docker).
  • Configurez vos répertoires de projets.
  • Installez vos scripts (par exemple, npm, Composer).
  • Configurez un référentiel Git (« repo ») et validez (téléchargez) vos fichiers de plugin dessus

Construire un environnement local

Lisez la répartition 👇🏻

Lorsque j'ai construit mon plugin, j'ai fini par utiliser à la fois Local by Flywheel et Docker, mais laissez-moi être clair : vous n'en avez vraiment besoin que d'un seul.

J'ai commencé avec Local by Flywheel car il est convivial et spécialement conçu pour le développement WordPress. Cependant, lorsque j'ai initialement essayé de connecter mon plugin directement à l'éditeur de blocs, j'ai rencontré des conflits de dépendances. Se produit lorsque deux ou plusieurs plugins ou thèmes nécessitent des versions différentes de la même dépendance. . C'est à ce moment-là que ChatGPT m'a suggéré d'essayer Docker pour m'aider, donc je me suis retrouvé avec les deux outils.

Mon conseil ? Commencez par Local by Flywheel. C'est simple et fonctionne très bien pour la plupart des scénarios de développement de plugins pour débutants. N'envisagez des alternatives comme Docker que si vous rencontrez des problèmes spécifiques que Local ne peut pas gérer.

Une fois votre site Web configuré, je vous recommande également d'installer le plugin WP Fastest Cache. Cela vous sera utile plus tard lorsque vous effectuerez le peluchage et le débogage.

Configurer les répertoires de projets

Lisez la répartition 👇🏻

Une fois votre environnement local opérationnel, vous devrez configurer la structure de répertoires de votre plugin. Une structure de fichiers bien organisée est cruciale pour le développement de plugins maintenables et évolutifs. Voici comment commencer :

  • Dans votre environnement local (c'est-à-dire votre disque dur), accédez au répertoire des plugins WordPress (généralement wp-content/plugins/ ).
  • Créez un nouveau dossier pour votre plugin. Choisissez un nom descriptif mais concis. J'ai nommé le mien «Funky Text Effects».
  • Dans ce dossier principal, configurez une structure de base qui ressemble à ceci :
 funky-text-effects/ ├── assets/ │ ├── css/ │ ├── js/ │ └── images/ └── funky-text-effects.php

Si vous envisagez de traduire votre plugin dans d'autres langues, vous pouvez également ajouter un répertoire /languages dans le répertoire principal du plugin :

effets de texte géniaux/
├── atouts/
│ ├──css/
│ ├──js/
│ └──images/
├── langues/ (facultatif)
└── funky-text-effects.php

  • Enfin, créez un fichier .gitignore dans le répertoire principal de votre plugin, ce qui vous aidera à éviter de déposer des fichiers inutiles dans votre référentiel Git. Cela a été inclus dans le modèle d'invite initial de ChatGPT, il est donc possible que GPT vous dise automatiquement de le faire lorsque vous atteignez cette étape. Cependant, cela peut être un oubli, surtout lorsque votre fil commence à devenir trop long. C'est pourquoi je le mentionne ici à titre de rappel.

Installer des scripts

Lisez la répartition 👇🏻

Pour installer vos scripts, vous devrez utiliser l'interface de ligne de commande, c'est-à-dire Terminal sur Mac ou Invite de commandes sous Windows.

Si vous débutez dans le développement, cela peut sembler intimidant. Mais ne vous inquiétez pas, ce n'est pas aussi effrayant qu'il y paraît ! Non seulement cela, mais chaque fois que vous serez bloqué – et croyez-moi, vous resterez bloqué – ChatGPT sera là pour vous aider à vous en sortir. Je recommande également d'utiliser Claude comme option de sauvegarde. Parfois, si vous n'arrivez à rien avec GPT, Claude peut vous apporter une avancée décisive.

Cela étant dit, examinons les outils dont vous aurez presque certainement besoin, quel que soit le type de plugin que vous allez créer :

  1. NPM (Node Package Manager) : pour divers outils JavaScript.
  2. Composer : Pour gérer les dépendances PHP.
  3. Scripts WordPress : une collection de scripts réutilisables pour le développement WordPress.

Dans les étapes ultérieures, vous devrez également installer d'autres outils pour le peluchage, etc. J'en parlerai lorsque nous y arriverons.

💡 Je recommande également de jeter un œil à cette page. Il contient un répertoire de tous les différents packages de scripts que vous pouvez installer. Même s'il est peu probable que vous compreniez beaucoup de choses à ce stade, certains d'entre eux sont intitulés de manière à donner une idée de leur utilité. Si l'un d'entre eux semble pertinent pour votre plugin, demandez-en directement à GPT.

Au fur et à mesure que vous progressez dans votre parcours de développement de plugins, vous aurez une idée des outils que vous utilisez fréquemment et de ceux dont vous pouvez vous passer. N'ayez pas peur d'expérimenter et de trouver la configuration qui fonctionne le mieux pour vous et votre plugin.

Créez un dépôt Git (« repo ») et validez vos fichiers

Lisez la répartition 👇🏻
Mon dépôt GitHub.
Mon référentiel GitHub initial. C'est privé pour le moment, mais une fois que j'aurai apporté quelques ajustements supplémentaires à mon code, je le rendrai public – alors gardez un œil sur cette page !

Une fois toutes les étapes précédentes terminées, il est temps de créer un référentiel Git et d'y valider vos fichiers initiaux. Cette étape crée un instantané du point de départ de votre projet.

J'ai personnellement utilisé GitHub parce que c'est ce que nous utilisons ici chez Themeisle, donc j'y avais déjà un compte, mais il existe également d'autres plates-formes (par exemple, GitLab, Bitbucket). Si vous finissez par utiliser une plate-forme autre que GitHub, n'oubliez pas d'ajuster le modèle d'invite lors de la troisième phase .

Par souci de brièveté, je ne vais pas vous expliquer comment procéder. Une fois que vous avez atteint cette étape, ChatGPT peut vous guider tout au long du processus étape par étape, y compris les commandes que vous devrez saisir dans votre terminal/invite de commande.

Lors de la validation de vos fichiers initiaux, gardez ces points à l'esprit :

  • Vérifiez ce que vous engagez : assurez-vous de n’inclure que les fichiers nécessaires. Utilisez votre fichier .gitignore pour exclure tous les fichiers temporaires ou générés.
  • Écrivez un message de validation clair : quelque chose comme « Validation initiale : structure et configurations de base du projet » fonctionne bien.
  • Ne vous souciez pas de la perfection : ce n'est que votre point de départ. Vous effectuerez beaucoup plus de commits au fur et à mesure que vous développerez votre plugin.

Encore une fois, ChatGPT vous donnera très probablement des conseils sur les commandes spécifiques à utiliser pour cette validation initiale. Si ce n'est pas le cas, demandez-lui simplement de le faire. Assurez-vous d'écrire que vous avez besoin des étapes exactes en fonction de votre configuration et de votre plate-forme Git.

En complétant cette étape, vous lancerez officiellement votre projet de développement de plugin avec une base solide pour le contrôle de version. À partir de maintenant, vous pourrez suivre chaque modification que vous apportez, expérimenter de nouvelles fonctionnalités en toute sécurité et collaborer avec d'autres si vous choisissez de le faire.

Phase quatre : temps de lecture du plugin 🖱️

De toutes les phases, je dirais que celle-ci et la suivante sont probablement les plus amusantes car c'est à ce moment-là que l'on commence vraiment à voir tout s'enchaîner. Pour commencer, vous devrez vous connecter à votre installation WordPress locale. Si vous finissez par utiliser Local by Flywheel, c'est très simple, il vous suffit de cliquer sur le bouton WP Admin en haut à droite :

Connexion à wp-admin depuis l'interface Local by Flywheel.

Si vous utilisez Docker ou un autre outil de développement local et que vous ne savez pas comment accéder à votre site, demandez simplement à ChatGPT.

Une fois connecté, activez votre plugin en allant dans Plugins → Plugins installés . Recherchez ensuite votre plugin dans la liste et cliquez sur Activer :

⚠️ Important : Si vous ne voyez pas votre plugin ici, pas de panique. Il s'agit probablement d'une incompatibilité de répertoire, mais quoi qu'il en soit, vous pouvez appuyer sur ChatGPT pour vous aider à le comprendre. Si vous vous retrouvez toujours bloqué après des tentatives répétées et que ChatGPT ne vous a pas suggéré d'essayer le mode de débogage de WordPress, demandez-lui de vous donner les extraits de code correspondants. Ils ressembleront à ceci :

 define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Après avoir activé votre plugin, commencez à l'utiliser et prenez des notes :

  • Est-ce que tout fonctionne comme il est censé le faire ? Très peu probable .
  • Qu'est-ce qui ne marche pas ? En quoi ça ne marche pas ?
  • Quelles sont les choses mineures que vous avez complètement négligées dans la description initiale de votre invite et qui ne fonctionnent pas correctement ?

Une fois que vous avez pris vos notes, vous êtes prêt à passer à la phase suivante : le débogage et le peluchage.

Phase cinq : débogage et peluchage 💻

La complexité du plugin et les bugs ont une relation de corrélation : plus votre plugin devient complexe, plus le potentiel de bugs est grand . Mais même les plugins les plus simples nécessiteront du peluchage et du débogage.

Pelucheux

Si cet article est la première fois que vous voyez le mot « linting » et que vous n'êtes pas sûr de ce que cela signifie, très simplement, il vérifie le code de votre plugin par rapport à un ensemble de règles et de normes pour ce type de code. Il vous indique ensuite s'il a détecté des erreurs ou des incohérences, sur quelles lignes elles se trouvent et comment les résoudre.

Un exemple de peluchage d'un de mes fichiers JavaScript.

Le peluchage est assez simple. Assurez-vous simplement que vous utilisez les outils de peluchage appropriés pour les types de code/fichiers sur lesquels vous allez travailler :

  • PHP_CodeSniffer avec WordPress-Coding-Standards pour le peluchage PHP.
  • ESLint pour le peluchage JavaScript.
  • StyleLint pour le peluchage CSS.

Pour JavaScript, vous souhaiterez peut-être également ajouter :

  • ESLint Unicorn : plus de 100 règles ESLint puissantes.
  • Promesse ESLint : utile pour gérer les tâches asynchrones telles que les appels d'API, les requêtes de base de données, la gestion de fichiers ou toute opération qui prend du temps.

Débogage

Contrairement au peluchage, le débogage ressemble beaucoup à ce que vous avez fait dans la phase précédente, c'est-à-dire que vous utilisez le plugin vous-même, identifiez les problèmes qui doivent être résolus, puis soit vous les corrigez vous-même, soit vous demandez à ChatGPT de vous aider.

Personnellement, j'ai trouvé le débogage plus compliqué que le peluchage. L'une des principales raisons est que lorsque vous effectuez un lint, le résultat du processus de lint vous indique exactement quels sont les problèmes et où ils se trouvent dans votre code. Avec le débogage, vous n’obtenez pas ce luxe. C'est à vous et à ChatGPT de le découvrir.

Cependant, ChatGPT a du mal à rester concentré sur les lignes de code problématiques, ce qui signifie que vous devez vous occuper du « prêt, prêt » avant de le laisser « se déclencher ».

Pour vous faciliter la tâche, j'ai dressé une liste de tous les différents conseils que je me serais donné avant de démarrer la phase de débogage.

Lisez la répartition 👇🏻

Ne soyez pas vague et ne laissez pas ChatGPT s'en charger

Si vous ne donnez pas d'instructions très spécifiques à ChatGPT, il commencera à vous cracher des lignes de code sans fin et souvent, le code ne sera même pas différent de ce qu'il vous a déjà donné. Il voudra que vous «vérifiiez» que c'est correct, mais cela ne fait que perdre du temps. Il n'y a rien de plus frustrant que ça :

ChatGPT fournit un code lors du débogage qui est identique au code fourni précédemment (c'est-à-dire ne résout pas le problème).

Ce que vous devriez faire à la place, c'est donner à ChatGPT des instructions très spécifiques non seulement pour générer du code, mais pour isoler spécifiquement les lignes de code qui, selon lui, sont à l'origine du problème et vous les montrer. Dites-lui d'expliquer comment il envisage de modifier ces lignes et pourquoi il pense que ces changements résoudront le problème. Enfin, demandez-lui de vous indiquer quel devrait être le résultat attendu une fois ces changements mis en œuvre.

Ces instructions l'aideront à rester concentré sur le problème et minimiseront les bogues de débordement qui pourraient résoudre votre problème unique mais provoquer de nouveaux problèmes dans le processus.

CSS régulier contre CSS BEM

En relation avec ce qui précède mais spécifique au CSS, vous devez garder à l'esprit que pour tout extrait de code CSS, ChatGPT générera du CSS standard, ou ce que j'appelle « CSS de classe » par défaut.

Il s'agit du CSS de base que vous apprendrez en suivant un cours pour débutants sur le sujet. C’est facile à comprendre et il n’y a rien de mal techniquement à cela en soi, mais lors du développement de plugins WordPress, cela peut entraîner des conflits avec d’autres plugins ou thèmes.

Au lieu de cela, il est préférable de dire à GPT d'utiliser la méthodologie BEM (Block Element Modifier). BEM contribue à réduire le risque de conflits CSS en fournissant une convention de dénomination claire et structurée. Cela garantit que vos styles sont plus prévisibles et plus faciles à gérer, car chaque bloc, élément et modificateur a un nom de classe distinct et descriptif qui minimise le risque d'impacts de style involontaires. De plus, BEM améliore la maintenabilité en facilitant la localisation et la mise à jour de styles spécifiques sans affecter les autres.

J'ai déjà inclus une mention à ce sujet dans l'exemple d'invite de la phase deux, mais je la souligne ici afin que vous n'oubliez jamais de donner ces instructions à ChatGPT pour vos extraits CSS.

Chargement conditionnel versus mise en file d'attente globale

Un autre comportement par défaut de ChatGPT concerne la mise en file d'attente des scripts. Ne vous inquiétez pas si vous ne savez pas encore ce que signifie cette phrase. Ce qui compte, c'est que vous le reconnaissiez dans votre code lorsque vous le voyez. Cela ressemblera à ceci :

 function enqueue_my_scripts() { wp_enqueue_script('my-plugin-script', plugin_dir_url( FILE ) . 'js/my-script.js', array('jquery'), '1.0.0', true); } add_action('admin_enqueue_scripts', 'enqueue_my_scripts');

Dans l'exemple ci-dessus, le code mettra globalement en file d'attente un script pour toutes les pages d'administration, ce qui est souvent inutile et peut entraîner des problèmes de performances. Malheureusement, c'est ce que ChatGPT vous offrira à moins que vous ne parliez et ne lui disiez de ne pas le faire. Pour être clair, dans certains cas, cela est tout à fait approprié, mais dans de nombreux cas, ce n'est pas le cas.

Par conséquent, dès que vous remarquez que ChatGPT génère un code avec le mot « mettre en file d'attente », assurez-vous d'avoir une conversation à ce sujet. Demandez à ChatGPT s'il est judicieux de mettre vos scripts en file d'attente globalement, ou uniquement sur les pages spécifiques où les scripts sont nécessaires – ce que l'on appelle le « chargement conditionnel ».

Rappelez et rappelez fréquemment

ChatGPT a une propension à l’oubli et cela est encore plus vrai lorsque vous l’utilisez pour coder. Ainsi, même si vous pouvez lui donner des instructions spécifiques, la probabilité qu'il suive ces instructions pendant toute la durée de votre projet est nulle .

Parfois, il ignorera même carrément ce que vous lui demandez de faire. Si cela se produit, soyez simplement plus sévère et faites-lui savoir qu'il ne fait pas ce que vous voulez :

En plus de cela, après quelques interactions, il reviendra rapidement à son comportement standard consistant à essayer de vous noyer dans d'énormes quantités de code qui n'ont rien à voir avec la section de code que vous essayez de déboguer.

Lorsque cela se produit, appuyez simplement sur le bouton d'arrêt de la sortie de GPT et rappelez-lui de suivre vos instructions. Il est également utile de les copier et de les coller dans la fenêtre de discussion lorsque vous effectuez le rappel.

Et en parlant de générer de longues lignes de code…

Évitez que ChatGPT régénère des fichiers entiers pour vous

Lorsque vous n'êtes pas habitué à travailler avec du code et que vous vous sentez intimidé, demander à ChatGPT de régénérer l'intégralité du fichier pour vous après chaque modification du code peut sembler attrayant au début.

Tout ce que vous avez à faire est de « copier-coller », n’est-ce pas ?

Même si cela peut paraître tentant, c’est en réalité une mauvaise idée . À long terme, cela vous causera encore plus de problèmes. Non seulement vous perdrez beaucoup de temps à faire cela, surtout si vous déboguez votre fichier PHP, qui peut devenir assez long, mais ChatGPT pourrait introduire de nouvelles erreurs dans votre code existant au cours du processus. Cela résoudra le problème sur lequel vous travaillez, mais cela modifiera accidentellement une autre partie du fichier et cassera quelque chose.

Il est préférable d'isoler les parties spécifiques du code qui sont à l'origine du problème et de travailler uniquement sur celles-ci.

Prenez-le un bug à la fois

Dans le même ordre d’idées, même si vous avez plusieurs bugs – à moins qu’ils ne soient très mineurs – n’en informez ChatGPT que d’un seul à la fois. Corrigez chaque bug avant de passer au suivant.

Portez une attention particulière aux lignes tout en haut et en bas des extraits de code

Lorsque ChatGPT vous donne des extraits de code, il les encapsule parfois – mais pas toujours – en vous montrant la toute première ligne du fichier global avec lequel vous travaillez, ainsi que la toute dernière ligne. Par conséquent, vous devez faire attention à ne pas toujours simplement copier et coller l’intégralité de l’extrait, car cela briserait votre code.

⚠️ Portez une attention particulière à la ligne du haut :

Ignorer la ligne supérieure d'un extrait de code.

Si cela n'est pas pertinent pour l'extrait de code spécifique que vous essayez de déboguer, ignorez-le.

Il en va de même pour le résultat net, même si cela peut être plus difficile à repérer. Cela peut parfois être aussi simple que quelque chose comme }); ce qui provoque la rupture de votre code car il ferme un extrait parent qui n'est pas encore censé être fermé.

Ignorer la dernière ligne d'un extrait de code.

Après un certain temps, vous comprendrez mieux, mais lorsque vous commencez votre parcours de développement de plugins, si vous remarquez que beaucoup de choses se cassent après avoir ajouté un extrait, essayez de supprimer cette toute dernière ligne pour voir si elle « comme par magie ». » répare tout.

La console est votre meilleure amie

Si ChatGPT essaie de déboguer le même problème sans succès et que vous tournez en rond, demandez-lui d'ajouter des lignes console.log aux sections de code qui, selon lui, sont à l'origine du problème. Ensuite, ouvrez la console pendant que vous recréez le bogue. Cela expliquera ce qui s'est passé. Vous pouvez ensuite capturer cette explication et la transmettre à ChatGPT afin qu'il puisse comprendre comment y remédier.

Utiliser la console pour déboguer.

Pour accéder à la console dans Google Chrome, faites un clic droit sur la page et sélectionnez Inspecter :

Accès à la console dans Google Chrome.

Lorsque la console ne vous donne pas de réponses, vérifiez votre base de données

La console est excellente et vous donnera souvent les réponses dont vous avez besoin. Cependant, dans certains cas, cela ne fera que confirmer ce que vous vivez, mais sans vraiment vous donner d’indications sur la façon d’y remédier.

Par exemple, lorsque j'essayais d'ajouter un effet de frappe à mon plugin, la vitesse de prévisualisation par défaut de l'effet dans wp-admin était définie sur 23 millisecondes. J'ai passé un temps fou à réviser mes fichiers PHP et JavaScript pour essayer de résoudre le problème, mais en vain.

La console a confirmé qu'elle se chargeait à 23 heures, mais au-delà de cela, elle ne m'a donné aucune autre information précieuse :

Erreur de confirmation de la console mais sans solution.

Finalement, j'ai vérifié la base de données et j'ai réalisé que la valeur défectueuse venait de là :

Vérification de la base de données pour les erreurs.

J'ai changé ce 23 en 60, ce que je voulais, et cela a résolu le problème.

Si vous finissez par utiliser Local by Flywheel, vous pouvez accéder facilement à votre base de données via l'interface en cliquant sur l'onglet Base de données :

Accès à la base de données via Local by Flywheel.

Une fois que vous avez accès, un bon endroit pour commencer à chercher est le même endroit que vous m'avez vu regarder dans la capture d'écran ci-dessus : wp_options. La plupart du temps, les paramètres de vos plugins s'y trouveront.

⚠️ Cependant, il est également important de souligner que le plus gros problème sous-jacent ici était qu'il manquait en fait des instructions d'activation dans mon code. Lorsque votre plugin est activé pour la première fois, il doit vérifier si certains paramètres existent dans la base de données. Si ce n'est pas le cas, votre plugin doit les ajouter avec vos valeurs par défaut prévues. Cela garantit que chaque nouvelle installation de votre plugin démarre avec les paramètres corrects. J'ai appris cela à mes dépens pour que vous n'ayez pas à le faire.

Un nouveau fil de discussion peut vous apporter des avancées

À mesure que votre code grandit et que votre fil de discussion avec ChatGPT devient de plus en plus long, il sera susceptible de commettre des erreurs ou d'oublier des choses. À un moment donné, c'est une bonne idée de créer un nouveau fil de discussion. Téléchargez vos principaux fichiers de plugin sur le nouveau fil de discussion et expliquez à ChatGPT ce que vous faites et où vous vous êtes arrêté.

Voici un exemple d'invite que vous pouvez utiliser :

Je travaillais sur le débogage d'un plugin WordPress avec vous dans un autre fil de discussion mais je pense que le fil est devenu trop long et que vous commenciez à être confus. Commençons à zéro.

Jetez un œil aux fichiers du plugin ici et essayons de résoudre le problème [décrivez votre bug] .

De plus, et c'est TRÈS IMPORTANT, lorsque vous générez de nouvelles versions d'extraits de code pour tenter de dépanner, ne vous contentez pas de générer l'extrait, mais fournissez également une explication sur les lignes que vous avez modifiées par rapport à ce qui est déjà présent. Expliquez également la raison qui sous-tend la modification de ces lignes et ce à quoi nous pouvons nous attendre avec les modifications que vous avez apportées.

[Si vous générez du CSS, n'oubliez pas de rappeler à ChatGPT de suivre la méthodologie BEM (Block Element Modifier).]

N'ayez pas peur d'utiliser votre cerveau

Plus votre plugin est complexe, plus GPT risque de gâcher votre code. Bien que cela vous aide à déboguer, vous constaterez parfois qu'il est préférable de trouver la solution par vous-même. Pour être honnête, cela m'est arrivé assez souvent, en particulier dans les dernières étapes de ma construction, où mon fichier PHP principal comptait plus de 500 lignes (avec des versions ultérieures dépassant 1 000).

En fonction de votre familiarité et de votre aisance avec la lecture du code, cela peut avoir un effet dissuasif, mais si vous maîtrisez bien la reconnaissance des formes et la détection des incohérences, vous pouvez vous en sortir.

Je ne suis certainement pas un programmeur qualifié, même si j'ai une compréhension de ce que font les différents langages de programmation et une certaine familiarité avec le code, ce qui m'a aidé.

Néanmoins, même si vous êtes un novice total, vous pouvez consulter les lignes de code qui, selon GPT, pourraient être à l'origine du problème. Recherchez ensuite un élément identique dans votre code qui fonctionne correctement. Comparez son code au code de l'élément cassé et essayez de voir ce qui est différent. Souvent, cela résoudra le problème :

Conservez des sauvegardes de vos fichiers de plugin (facultatif si vous utilisez Git)

Bien que l'utilisation de Git constitue un moyen puissant de gérer et d'annuler les modifications apportées à votre code, ce n'est jamais une mauvaise idée de conserver également des sauvegardes manuelles. Chaque fois que vous franchissez une étape avec votre code, je vous suggère de sauvegarder une copie de vos principaux fichiers de code dans un autre dossier :

Faire des copies des fichiers du plugin.

Cela peut servir de filet de sécurité supplémentaire, vous permettant de revenir facilement à une version précédente meilleure si vous rencontrez des bugs sérieux en poursuivant la construction.

N'abandonnez pas facilement, mais connaissez vos limites

Il se peut que vous ne puissiez tout simplement pas mettre en œuvre certaines fonctions ou modifications, quels que soient vos efforts. Soyez prêt à ajuster vos attentes et à les contourner . Cela ne veut pas dire abandonner si vous heurtez un mur. Cependant, cela signifie que si vous avez fait 100 tentatives et passé des heures (ou des jours) à essayer de réaliser quelque chose sans succès, alors ce n'est probablement pas possible ou cela dépasse vos capacités et celles de ChatGPT.

Enfin, si vous vous demandez si vous devez d'abord déboguer ou lint, à ma connaissance, il n'y a pas de réponse claire. J'ai débogué avant de linter, mais vous pouvez soit utiliser par défaut les préférences de ChatGPT au fur et à mesure du processus, soit lui indiquer celle que vous souhaitez faire en premier.

Phase six (facultative) : tests 🔬

Si vous créez un plugin relativement simple et que vous avez confiance dans ses fonctionnalités sur la base de vos propres tests manuels, vous n'avez pas nécessairement besoin de franchir cette étape. Je dis cela parce que cela nécessite encore beaucoup de travail pour coder ces tests, et de la même manière que vous n'obtiendrez pas un plugin fonctionnel avec ChatGPT, il est également peu probable que vous obteniez un test fonctionnel sans bugs.

En termes simples, il y a ici un compromis entre l'investissement en temps et la valeur pratique .

D'après ma propre expérience, j'ai réussi à créer un test qui vérifiait si mes plugins étaient capables ou non d'exécuter leurs fonctions principales lorsqu'un utilisateur interagissait avec eux – mais cela m'a pris une journée entière de débogage !

Conversation avec ChatGPT sur le test du plugin WordPress.

D'un point de vue pratique, j'avais déjà vérifié manuellement les fonctionnalités de mon plugin, mais c'était sympa de voir que le test confirmait que tout fonctionnait.

Si vous envisagez de créer un plugin plus complexe que moi, ou si les fonctions de votre plugin seront concentrées sur le back-end (où vous ne pouvez pas vérifier manuellement s'ils fonctionnent ou non), alors prenez le temps de exécuter correctement des tests vaut le travail manuel.

Types d'examens

Lisez la répartition 👇🏻

En fonction de la complexité de votre plugin, vous souhaiterez peut-être envisager différents types de tests, tels que :

  • Tests unitaires : ces tests se concentrent sur la vérification de la fonctionnalité de composants ou de méthodes individuels au sein de votre plugin.
  • Tests d'intégration : ces tests vérifient comment les différentes parties de votre plugin fonctionnent ensemble, garantissant que la fonctionnalité globale est comme prévu.
  • Tests de bout en bout (E2E) : ces tests simulent les interactions de l'utilisateur avec votre plugin, du début à la fin, pour garantir qu'il se comporte comme prévu dans un scénario réel.

Les tests spécifiques que vous rédigerez dépendront des fonctionnalités et de la complexité de votre plugin. Si vous ne savez pas par où commencer, je vous recommande de vous concentrer d'abord sur les tests unitaires pour vos fonctionnalités principales. Développez ensuite les tests d'intégration et E2E selon vos besoins.

Si vous ou ChatGPT continuez à rester bloqué, la communauté des développeurs WordPress dispose d'une ressource complète sur les tests que vous pouvez consulter. Vous pouvez soit le parcourir vous-même, soit en copier des sections et les transmettre à ChatGPT pendant qu'il continue de vous aider à déboguer.

Outils à considérer

Lisez la répartition 👇🏻
  • Yoast PHPUnit Polyfills : ce package Composer offre une compatibilité avec la dernière version de PHPUnit pour les anciennes versions de PHP, garantissant que vos tests peuvent s'exécuter de manière cohérente dans différents environnements.
    Commande de terminal : composer require yoast/phpunit-polyfills
  • MySQL : Le serveur de base de données MySQL est une exigence courante pour de nombreux plugins WordPress, car ils ont souvent besoin d'une base de données pour stocker et récupérer des données.
    Lien de téléchargement : https://dev.mysql.com/downloads/mysql/

J'ai utilisé à la fois Yoast PHPUnit Polyfills et MySQL dans le cadre de ma configuration de test.

Outils supplémentaires que vous pourriez envisager :

  • WP_Mock : Il s'agit d'un framework de test spécialement conçu pour le développement WordPress. Il vous permet de simuler les fonctions principales de WordPress, ce qui peut être particulièrement utile lors de l’écriture de tests unitaires.
    Commande de terminal : composer require 10up/wp_mock
  • Codeception : il s'agit d'un cadre de test complet qui prend en charge les tests unitaires, d'intégration et de bout en bout (E2E). Il dispose d'un module spécifique à WordPress qui peut simplifier le processus de test des plugins WordPress.
    Commande du terminal : composer require codeception/codeception
  • WP Browser : Il s'agit d'un module Codeception qui fournit une API de haut niveau pour interagir avec WordPress lors des tests E2E. Il peut vous aider à simuler les interactions des utilisateurs et à tester les fonctionnalités de votre plugin dans un environnement plus réaliste.
    Commande terminal : Pas de commande terminal directe, car il s'agit d'un module au sein de Codeception
  • PHPUnit Parallel Runner : Si vous disposez d'une grande suite de tests, vous pouvez envisager d'utiliser PHPUnit Parallel Runner pour accélérer le processus de test en exécutant des tests simultanément.
    Commande terminal : composer require brianium/paratest

Phase sept (facultative) : soumettez votre plugin au référentiel WordPress 🥳

Si vous êtes arrivé jusqu’ici, alors vous avez gravi avec succès la proverbiale montagne des plugins. Il ne vous reste plus qu'à planter votre drapeau pour qu'il rejoigne les 59 650 autres plugins du dépôt WordPress.

Cela a son propre processus distinct, qui est accompagné d'une liste de contrôle sur la page Ajouter votre plugin :

  • Lisez la foire aux questions.
  • Respectez toutes les directives du développeur de plugins.
  • Assurez-vous d'avoir l'autorisation de télécharger votre plugin sur WordPress.org pour que d'autres puissent l'utiliser et le partager.
  • Votre plugin, y compris toutes ses bibliothèques, et tous les autres actifs inclus sont sous licence GPL ou sont compatibles GPL.
  • Vous effectuez une dernière série de tests avec le plugin Plugin Check et vous résolvez tous les problèmes indiqués (à l'exclusion de ce que vous pensez être des faux positifs).
Vérification des plugins (PCP) Vérification des plugins (PCP)

Auteurs : Équipe de performance WordPress et équipe de révision des plugins

Version actuelle : 1.1.0

Dernière mise à jour : 28 août 2024

plugin-check.1.1.0.zip

92 % de notes Plus de 1 000 installations WP 6.3+ requis

Vous pourriez penser qu'après tous les débogages, peluchages et tests que vous avez effectués, le plugin qu'ils vous demandent d'utiliser ne récupérera rien. Cependant, en tant que développeur de plugins pour la première fois, il vous restera probablement quelques problèmes à résoudre, surtout si vous ne supprimez pas les fichiers de test de votre build avant d'exécuter la vérification.

Pour continuer, allez dans OutilsPlugin Check :

Accès à l'outil Plugin Check depuis wp-admin.

Cochez ensuite les cinq catégories et exécutez la vérification :

Résultats de la vérification du plugin.

Vous pouvez ensuite transmettre ces problèmes en suspens à ChatGPT et les résoudre. Lorsque vous avez terminé, réexécutez la vérification pour garantir un résultat propre. Faites-le autant de fois que nécessaire. Une fois que vous avez obtenu un contrôle totalement propre (à l’exclusion des faux positifs), vous pouvez soumettre votre plugin à l’équipe de développement WordPress. Attendez ensuite patiemment qu’ils l’examinent.

Aller en haut

Réflexions finales 🧠

Bien que créer un plugin avec ChatGPT soit un processus amusant et gratifiant, ce n'est en aucun cas un processus rapide. Vous devez consacrer beaucoup de temps à la sueur pour créer un produit final fonctionnant décemment. En fin de compte, vous apprécierez toutes les nouvelles compétences que ce projet vous apprendra.

Il m'a fallu 120 heures pour créer un plugin #WordPress avec #ChatGPT sans aucune expérience préalable 🤯
Cliquez pour tweeter

Voici quelques choses que j’ai apprises (et vous pourriez aussi le faire) :

  • J'ai appris à naviguer sur mon disque dur à l'aide des commandes du terminal et j'ai également appris d'autres commandes liées au processus de création d'un plugin.
  • Je suis maintenant assez à l'aise avec Docker et Local by Flywheel, que je n'ai jamais utilisés avant cette expérience.
  • Je connais également de nombreux outils de développement et scripts dont j'ignorais l'existence auparavant.
  • J'ai déjà suivi quelques cours avec Free Code Camp et Codecademy, et même si les deux étaient excellents, j'ai l'impression d'avoir acquis beaucoup plus de connaissances pratiques en réalisant ce projet.
  • En relation avec ce qui précède, j'ai maintenant de nombreuses pépites d'informations de codage aléatoires qui me seront utiles si je travaille à nouveau sur quelque chose de similaire.
  • L'écart entre zéro et le plugin fonctionnel est beaucoup plus petit que l'écart entre le plugin fonctionnel et le plugin prêt à être soumis. J'ai obtenu une version fonctionnelle de mon plugin en quelques jours, mais il m'a fallu encore quelques semaines avant de travailler sur tous les ajustements pour le rendre suffisamment bon pour le soumettre au référentiel WordPress.

Dans l’ensemble, c’était l’une des activités les plus cool que j’ai faites depuis longtemps. Merci d'avoir pris le temps de lire. Si vous finissez par utiliser l'une de ces informations pour créer votre premier plugin, envoyez-moi un commentaire ci-dessous. J'aimerais vérifier votre résultat final.

Ouais! Vous êtes arrivé à la fin de l'article !