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

Arbeiten mit Klassen, Templates und Partials in WordPress

13

Als ich mich hinsetzte, um diesen Beitrag zu beginnen, hatte ich vor, etwas viel Involvierteres zu schreiben, als ich es mitteilen werde. Zunächst wollte ich eines von zwei Dingen durchgehen:

  • Der vollständige Leitfaden zum Einrichten einer Entwicklungsumgebung,
  • Integration von Code Quality Tools in PhpStorm

Die erste wäre, sich auf eine Vielzahl anderer Dinge zu konzentrieren, über die ich gesprochen habe, sie alle miteinander zu verknüpfen und eine endgültige Referenz zu haben. Aber das ist etwas, für das ich mir Zeit nehmen möchte, um es zusammenzustellen, um sicherzustellen, dass es richtig gemacht wird.

Das Zweite halte ich für wichtig, aber ich befinde mich mit einigen meiner eigenen Tools in einer Übergangsphase. Bis das erledigt ist, schreibe ich lieber nicht darüber.

Trotzdem gibt es immer etwas zu decken, oder? Deshalb habe ich mich heute für etwas Einfacheres entschieden: Die Verwendung von Klassen, Templates und Partials in WordPress-Plugins anhand eines einfachen Beispiels aufzuschlüsseln.

Klassen, Templates und Partials in WordPress

Bei diesem speziellen Thema stellt sich eine einfache Frage: Warum sollte man sich die Mühe machen, darüber zu sprechen?

Weil es 2018 ist und wir immer noch eine grobe Mischung aus PHP, CSS, Markup und JavaScript in einer einzigen Datei sehen. Dies soll nicht auf andere Technologien klopfen, die dies standardmäßig tun (wie React). Ich spreche speziell von WordPress-Plugins und dem Schreiben von wartbarem Code, der so einfach zu warten, zu schreiben und zu lesen ist.

Ein praktisches Beispiel

Angenommen, Sie arbeiten an einer Untermenüseite für etwas, das in einem benutzerdefinierten Menü angezeigt werden soll. Sie registrieren Ihre Seite über die WordPress-API:

Aber wenn Sie eine Rückruffunktion einrichten, um die Seite anzuzeigen, verwenden Sie die Funktion nicht, um alle verschiedenen Sprachen miteinander zu mischen. Stattdessen verwenden Sie es, um eine Datei einzuschließen.

Beachten Sie, dass ich in der obigen Datei auf eine Eigenschaft $this->pluginPath verweise. Dies wird im Konstruktor der Klasse festgelegt, sodass ich problemlos auf das Stammverzeichnis des Plugins zugreifen kann.

Wie könnte diese Datei aussehen?

Ein Template und ein Partial

In diesem Fall gehe ich davon aus, dass Ihre Vorlage Informationen für den Benutzer bereitstellt und seine Eingabe anfordert. Der Teil ist dafür verantwortlich, dem Benutzer eine Erfolgs-, Fehler- oder Warnmeldung anzuzeigen.

Eine Vorlage

Um es einfach zu halten, werde ich sowohl die Vorlage als auch das Teilbild so schlank wie möglich halten. Gehen Sie in diesem Fall davon aus, dass wir eine Seite rendern, den Benutzer auffordern, einen Wert zu speichern, und wenn der Wert erfolgreich gespeichert wird (und somit in der wp_options- Tabelle vorhanden ist), zeigen wir die Erfolgsmeldung an.

Das heisst:

  • Die Vorlage zeigt den Seitentitel, Informationen, Eingaben und die Schaltfläche zum Speichern an.
  • Der Teil zeigt bei Bedarf die Erfolgsmeldung an.

Schauen Sie sich den Code für die folgende Vorlage an:

Beachten Sie, dass es eine Eingabe, eine Schaltfläche zum Speichern und eine Nonce gibt, die alle wichtig sind (aber den Rahmen dieses Beitrags sprengen), um Informationen zu speichern.

Beachten Sie aber auch, dass es eine Hilfsfunktion gibt, die ich verwende, um zu überprüfen, ob Informationen erfolgreich gespeichert wurden. Diese Funktion befindet sich in derselben Klasse, die für das Rendern der Vorlage verantwortlich ist.

Teilweise

Es sieht in etwa so aus:

Und das resultierende Partial ist sehr einfach:

Natürlich kann Ihre Implementierung der Funktion davon abweichen. Der Zweck besteht nicht so sehr darin, zu zeigen, wie die Funktion implementiert wird, sondern wie man eine Funktion zum Überprüfen von Informationen zum Anzeigen eines Teils nutzt.

Es gibt mehr (aber nicht hier)

Vielleicht ist dies etwas, das an den Anfang des Artikels gestellt werden sollte.

Um ehrlich zu sein, denke ich, dass es eines dieser Dinge ist, wo manche es vielleicht hilfreicher finden, es von Anfang an zu sehen (aber dann fehlt der Kontext des Codes), und andere finden es am Ende hilfreicher, weil sie sehen können, wie alles zusammenpasst zusammen.

Unabhängig davon hoffe ich, dass es letztendlich Klarheit darüber schafft, wie all dies zusammenpasst.

Darüber hinaus gibt es an manchen Stellen viel Platz für Dinge, die angepasst werden können, wie zum Beispiel:

  • Überprüfen, ob der Benutzer die Berechtigung zum Speichern hat,
  • Überprüfung des Nonce-Werts,
  • Bereinigung und Validierung der Daten,
  • Bestimmen Sie, was Erfolg, Warnungen und Fehler ausmacht.

Aber wenn ich alle oben genannten Punkte abdecken soll, sehen wir uns einen außergewöhnlich langen Beitrag oder eine lange Reihe von Beiträgen an. Das ist nichts, was ich dagegen habe, aber es ist auch etwas, das ich jetzt nicht tue, das an dieser Stelle die Mühe wert ist.

Zögern Sie nie, Feedback zu geben. Aber in der Zwischenzeit hoffe ich, dass dies alles Ihnen hilft, eine Grundlage zu schaffen, auf der Sie aufbauen können, wenn Sie an Ihrem nächsten Projekt arbeiten.

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