✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

Tools zum Schreiben von besserem WordPress-Code: Composer

12

Obwohl ich denke, dass der Titel dieser Serie und die Artikel für jede davon klar genug sind, gibt es andere Dinge, die ich mit dieser Serie im Gegensatz zu den anderen Serien, die ich bis zu diesem Punkt geschrieben habe, erreichen möchte.

Insbesondere zwei der Dinge, die ich versuche, sind zwei:

  1. halten Sie jeden Artikel relativ kurz (im Vergleich zu früheren Artikeln),
  2. Konzentrieren Sie sich auf eine Sache nach der anderen und halten Sie die Beschreibung kurz.

Da es sich um Mitgliedschaftsinhalte handelt, stört es mich nicht, dass sie etwas länger als gewöhnlich sind, aber ich möchte auch nicht, dass sie so lang sind, dass sie schwer zu verfolgen sind. Ich möchte lieber eine kurze Lektüre mit etwas Praktischem, das Sie nach dem Lesen jedes Beitrags umsetzen können.

Und eines der Dinge, die beim Schreiben von besserem WordPress-Code sehr helfen, ist Composer.

Besserer WordPress-Code mit Composer

Wenn Sie diesen Blog längere Zeit gelesen haben, wissen Sie, dass ich ein Fan von Composer bin (allerdings bin ich bei weitem nicht die einzige Person, die in WordPress arbeitet).

Und obwohl ich etwas Material darüber geschrieben habe, habe ich nichts mit dem spezifischen Ziel geschrieben, Sie am Ende der Lektüre eines einzigen kurzen Artikels damit zum Laufen zu bringen.

Bis zu diesem Punkt müssen wir einige Kompromisse eingehen: Ich werde nämlich eine Beispielkonfigurationsdatei zusammen mit einer Möglichkeit bereitstellen, das Verzeichnis Ihres Plugins zu organisieren. Dann werde ich im nächsten Beitrag einige der Funktionen von Composer erklären.

Was ist Komponist?

Zunächst ist es wichtig zu verstehen, was Composer ist. Und es ist einfach, die auf der Website angegebene Definition zu rezitieren, nicht wahr? Es ist ein Abhängigkeitsmanager für PHP.

Aber zuerst, was ist eine Abhängigkeit?

Für einige wirft es jedoch einige Fragen auf:

  • Was ist eine Abhängigkeit?
  • Warum muss ich sie verwalten?

Und wenn Sie ein wenig tiefer graben, werden Sie vielleicht feststellen, dass es sich um einen Paketmanager handelt, und dies wirft einfach die gleichen Fragen auf, außer dass Sie einfach „Abhängigkeit” durch „Paket” ersetzen und wieder dort sind, wo Sie begonnen haben.

Also werde ich tun, was ich kann, um dies so klar wie möglich zu machen:

Eine Abhängigkeit oder ein Paket, ein Stück Software, das Ihr Code verwendet. Es kann etwas sein, auf das es während der Laufzeit für die Funktionalität angewiesen ist, z. B. eine Möglichkeit, HTTP-Anforderungen zu stellen, oder es kann eine Bibliothek zum Konvertieren von Arrays in XML sein.

Composer macht es einfacher, diese speziellen Pakete in Ihre Bibliothek aufzunehmen, indem es Ihnen Folgendes ermöglicht:

  • Laden Sie das Paket herunter und fügen Sie es in Ihr Plugin ein.
  • automatisch Ihr Plugin während der Laufzeit laden,
  • Machen Sie es Ihrem Plugin einfach, das Plugin nach Bedarf zu instanziieren oder aufzurufen.

Das bedeutet, dass wir die Verzeichnisse unserer Codebasis nicht mit vielen manuell hinzugefügten Dateien überhäufen müssen, und es bedeutet, dass wir nicht  überall Include oder Require verwenden müssen .

Diese werden ihren Platz haben, worauf ich im nächsten Beitrag eingehen werde, aber sie müssen nicht automatisch installiert werden. Stattdessen verwaltet Composer sie. Daher ist der Abhängigkeitsmanager Teil seines Zwecks.

Jetzt, da Sie es installiert haben, haben Sie etwas Kontext.

Composer verwenden

Das Schreiben dieses speziellen Abschnitts ist etwas schwierig, weil wir alle unterschiedliche Bedürfnisse haben, oder? Aber zumindest können wir alle von einem Autoloader profitieren.

Das können wir alle gebrauchen.

Also hier ist, was ich tun werde:

  1. Ich werde ein einfaches Plugin-Verzeichnis einrichten,
  2. Erstellen Sie die erforderlichen Dateien zum Betreiben des Plugins,
  3. Richten Sie eine einfache Composer-Datei ein,
  4. Führ es aus

Und dann zeige ich euch die Ergebnisse. Wir können in einem zukünftigen Beitrag (oder eigentlich in zukünftigen Serien) auf Bibliotheken von Drittanbietern oder andere Funktionen zugreifen.

Aber nicht zuletzt zeigt Ihnen dies, wie Sie mit Composer einen Autoloader definieren, damit Sie sich auf das Schreiben von Code konzentrieren können und sich nicht fragen müssen, ob Klassen enthalten sind.

Das Plugin-Verzeichnis

Ich baue meine Plugins generell so auf:

  • es gibt eine Bootstrap-Datei, die von WordPress gelesen wird,
  • es gibt ein src- Verzeichnis, in dem alle Verzeichnisse und PHP-Dateien aufbewahrt werden,
  • Es gibt ein Assets – Verzeichnis der obersten Ebene, in dem Bilder, JavaScript-Dateien und Sass-Dateien gespeichert werden.
  • und es gibt einen Vendor – Ordner, der von Composer erstellt wurde, um die Abhängigkeiten und den Autoloader aufzunehmen.

Gelegentlich kann es einen anderen seltsamen Ordner wie einen Inc- oder einen Lib -Ordner geben, aber das ist an diesem Punkt meiner Arbeit sehr unregelmäßig. Und deshalb werde ich mich in diesem Beitrag nicht darum kümmern.

Stattdessen sieht mein Verzeichnis in etwa so aus.

Das Herstellerverzeichnis fehlt, weil ich noch keine Composer-Datei erstellt habe, die zur Ausführung verwendet wird. Aber das sehen wir vor dem Ende des Beitrags.

Beispieldateien

Lassen Sie uns eine Beispieldatei im Plugin einrichten. Und wenn ich Muster sage, meine ich auch einfach.

Diese Datei hat einen einzigen Zweck: Drucken Sie eine Nachricht auf dem Dashboard, wenn Sie sich bei WordPress anmelden.

Tools zum Schreiben von besserem WordPress-Code: Composer

Denken Sie jedoch daran, dass der Zweck hier nicht darin besteht, zu zeigen, wie man ein gut strukturiertes Plugin schreibt. Stattdessen soll gezeigt werden, wie man einen Autoloader generiert, mit dem die Dateien des Plugins automatisch generiert werden.

Der Bootstrap des Plugins sieht also so aus :

Und die Datei, die speziell für die Anzeige der Nachricht verantwortlich ist, sieht folgendermaßen aus :

Und wenn Sie neugierig auf die HTML-Datei sind, ist es auch einfach :

Ich habe dir gesagt, dass es einfach ist.

Die Composer-Konfigurationsdatei

Diese bestimmte Datei kann je nach Bedarf so einfach oder kompliziert sein. Für diesen Beitrag halten wir es einfach. Das Ziel für diesen Beitrag ist es, ihm einfach einen Namen, eine Beschreibung, eine Lizenz, die Autoren und dann die Einrichtung des Autoloaders zu geben.

Schauen Sie sich das hier an, und dann erkläre ich Ihnen, was Sie direkt darunter sehen:

{ "name": "tommcfarlin/sample-plugin", "description": "A sample plugin used for a blog post.", "type": "wordpress-plugin", "license": "GPL-3.0-or-later", "authors": [ { "name": "Tom McFarlin", "email": "tom@tommcfarlin.com", "homepage": "https://tommcfarlin.com" } ], "autoload": { "psr-4": { "SamplePlugin": "src/" } } }

Erstens sollten Name, Beschreibung, Typ und Lizenz leicht verständlich sein. Auch der Autorenbereich ist übersichtlich.

Der Autoload ist der Bereich, um den wir uns derzeit Sorgen machen. Es sollte ziemlich klar sein.

Kurz gesagt, wir haben eine Direktive für PSR4, über die Sie mehr lesen können, und dann, wo sich ein Namespace befindet. Im obigen Beispiel befindet sich also alles im Namespace SamplePlugin in src. 

Dies teilt dem Autoloader mit, wo er nach bestimmten Dateien suchen soll. Und in unserem Fall wird nur nach der Messenger -Klasse gesucht.

Ausführen von Composer

Nachdem wir nun die Grundlagen der Composer-Konfigurationsdatei behandelt haben, ist es an der Zeit, sie tatsächlich auszuführen. Denken Sie daran, dass Ihr Plugin-Verzeichnis in etwa so aussehen sollte:

Tools zum Schreiben von besserem WordPress-Code: Composer

Geben Sie in Ihrem Terminal den folgenden Befehl ein :

Und Sie sollten so etwas sehen:

Tools zum Schreiben von besserem WordPress-Code: Composer

Angenommen, alles ist gut gegangen, dann sollten Sie sich bei WordPress anmelden und das Plugin aktivieren können.

Alles zusammen sehen

Sobald das Plugin aktiviert ist, können Sie zum Dashboard Ihrer Website navigieren. Dort sollten Sie einen verwerfbaren Hinweis sehen, der genau so aussieht, wie wir ihn am Anfang des Beitrags gesehen haben:

Tools zum Schreiben von besserem WordPress-Code: Composer

Wenn Sie so weit gekommen sind, dann können Sie loslegen! Überprüfen Sie andernfalls Ihre Syntax, um sicherzustellen, dass alles in Ordnung ist. Wenn etwas nicht stimmt, hätten Sie wahrscheinlich nicht so weit kommen können, und vorausgesetzt, Sie haben die grundlegenden Debug-Konstanten festgelegt, dann werden Sie wahrscheinlich sehen, wo das Problem liegt.

Das ist nicht alles

Composer hat noch viel mehr zu bieten, und ich empfehle dringend, die Dokumentation dazu zu lesen. Einiges davon werde ich behandeln, wenn ich mir die Tools anschaue, die ich später in dieser Serie behandeln möchte, aber vorerst empfehle ich, sich mit einigen der Konventionen vertraut zu machen.

Oh! Und ich empfehle nicht, das Herstellerverzeichnis in Ihr Repository einzuchecken. Das kann später zu einem riesigen Verzeichnis werden und den gesamten Zweck von Composer untergraben.

Im nächsten Beitrag werde ich darüber sprechen, warum. Manche Leute tun es, und das ist in Ordnung, und ich habe es schon früher getan, aber es ist wichtig, vernünftig zu sein, wann man es tut.

Err auf der Seite, es nicht zu tun. Und warum erkläre ich im nächsten Beitrag.

Aufnahmequelle: tommcfarlin.com

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen