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

Templating und bedingte Logik mit OOP in WordPress

8

Templating wird in WordPress immer häufiger, und ich halte das für eine gute Sache.

Aber das bedeutet nicht, dass es keine von uns geleiteten Projekte gibt, die einen traditionelleren Ansatz zur Anzeige von Vorlagen oder Partials verwenden. Darüber hinaus bedeutet dies auch nicht, dass wir von der Wartung von Codebasen ausgenommen sind, die Code verwenden, der keine Templating-Engine verwendet.

Obwohl ich denke, dass Templating gut ist, denke ich nicht, dass es immer notwendig ist. Das ist aber Inhalt für einen anderen Beitrag.

Stattdessen möchte ich durch den Prozess der Verwendung der bedingten Logik gehen, ob ein Partial innerhalb einer Vorlage angezeigt werden soll oder nicht, und zwar mit objektorientierter Programmierung.

Templating und bedingte Logik mit OOP

Nehmen wir dazu Folgendes an:

  1. Wir haben ein Plugin, das für eine Funktion von einem anderen Plugin abhängig ist.
  2. Das zweite Plugin ist optional.
  3. Wenn es nicht vorhanden ist, zeigen wir einen Hinweis an. Wenn es vorhanden ist, zeigen wir einen Teil an.

Einfach genug, oder?

Das einzige, was zu beachten ist, ist, dass all diese Logik innerhalb des primären Plugins gehalten wird (das heißt, dasjenige, das das Vorhandensein des anderen Plugins überprüft).

1 Die Bedingungslogik des Templates

Das erste, was getan werden muss, ist eine Funktion, die das Vorhandensein des sekundären Plugins überprüft. Der Grund dafür ist, dass die Vorlage in etwa so aussieht :

Und dann kann das Partial ungefähr so ​​​​aussehen ( es hängt von Ihrer Implementierung ab):

Aufgrund der Art und Weise, wie Vorlagen in WordPress enthalten sind, befindet sich die Funktion innerhalb einer Klasse, und die Klasse prüft, ob das Plugin vorhanden ist.

Wenn Sie einen beliebigen Code-Sniffer verwenden, wird er wahrscheinlich eine Warnung auslösen, dass die Methode nicht verwendet wird, aber die Methode wird verwendet, sie wird nur in einer Vorlagendatei verwendet. Notiz in einer Klasse. Abgesehen davon sind einige unserer Schnüffler nicht so intelligent. Noch.

2 Der serverseitige Code des Plugins

Sobald Sie eine ungefähre Vorstellung davon haben, wie das funktionieren soll, ist es an der Zeit, Code in Ihrer Klasse zu schreiben.

Denken Sie daran, dass dies eine einfache Funktion ist: Sie muss nur prüfen, ob ein Plugin vorhanden ist. Sie können dies auf verschiedene Arten tun, aber am häufigsten wird die API-Funktion is_active_plugin verwendet.

Beachten Sie, dass die Verwendung dieser Funktion auf der Idee basiert, dass Sie den Namen des von Ihnen verwendeten Plugins kennen. Wenn nicht, gibt es andere Möglichkeiten, aber das würde den Rahmen dieses Beitrags sprengen.

Wie auch immer, da die Logik bedingt ist, muss sie einen booleschen Wert zurückgeben, und genau das tut die obige API-Funktion. Die serverseitige Funktion kann also etwa so aussehen :

Und da der Vorlagencode diese Funktion aufruft (die Sie oben sehen), bestimmt er, ob ein Partial angezeigt werden muss oder nicht.

Leicht genug

Für manche ist das wirklich einfach; für andere ist es ein völlig anderer Ansatz, da es um eine stärkere Trennung von Anliegen geht.

Und während ich weiterhin mit den Mitgliedern der Site durch die OOP-Grundlagen arbeite, denke ich, dass es auch wichtig ist, einige der besseren Praktiken mit denen zu teilen, die vielleicht keine Mitglieder sind, aber darauf aus sind, besser organisierten Code zu schreiben.

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