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

Einschließen benutzerdefinierter Vorlagen in unsere WordPress-Plugins

7

Ich denke, dass einer der am meisten unterschätzten Aspekte – oder vielleicht einer der selten diskutierten Aspekte der benutzerdefinierten Plugin-Entwicklung – die Möglichkeit ist, benutzerdefinierte Vorlagen in unsere WordPress-Plugins aufzunehmen.

Und um ehrlich zu sein, verstehe ich es: Ich bin einer, der ziemlich überzeugt davon ist, was ein Plugin und was ein Thema sein sollte.

Das ist:

  • Themen dienen der Präsentation,
  • Plugins sind Funktionalität.

Wenn ich Vorlagen in ein Plug-in einfüge, mache ich dann nicht das Gleiche wie wenn Entwickler Funktionen in ihre Designs aufnehmen?

Wie bei so vielen Dingen in der Entwicklung, denke ich, dass es darauf ankommt. Ich meine, viele Funktionen hinzuzufügen, die Sie an ein Thema binden, ist etwas, von dem ich kein Fan bin. Wenn Sie ein Plugin haben, das Daten auf dem Frontend präsentieren soll und themenunabhängig ist, dann ist es ebenfalls sinnvoll.

Sie müssen also in Ihren Entscheidungen vernünftig sein.

Unabhängig davon gibt es eine Reihe von Schritten, die wir verwenden können, wenn wir benutzerdefinierte Vorlagen in unsere WordPress-Plugins aufnehmen.

Und das soll dieser Beitrag zeigen.

Wenn Sie benutzerdefinierte Vorlagen in das Plugin aufnehmen, gehe ich davon aus, dass Sie sowohl Einzel- als auch Archivvorlagen verwenden. Wenn nicht, verwenden Sie nur die Hooks und den Code unten, die Sie benötigen.

Einschließen benutzerdefinierter Vorlagen in unsere WordPress-Plugins

Kennen Sie jedoch für beide Folgendes:

Mit diesen Hooks können Sie WordPress mitteilen, wo sich die benutzerdefinierten Vorlagen in Ihrem Plugin befinden.

Vorlagen organisieren

Für mich habe ich normalerweise ein Templates -Verzeichnis in meinem Plugin, das auf der gleichen Ebene wie die Assets-, src- und Vendor- Verzeichnisse liegt.

Einschließen benutzerdefinierter Vorlagen in unsere WordPress-Plugins

Dies macht es einfach zu wissen, wo sie sich befinden, und bietet eine konsistente Möglichkeit, sie in alle von Ihnen erstellten Plugins aufzunehmen. Schließlich spricht einiges dafür, konsequent in den von uns verwendeten Konventionen zu sein.

Einschließlich der Vorlagen

Angenommen, Sie haben  die Vorlagen single-acme.php und archive-acme.php, dann ist es einfach, sie einzubinden. Und obwohl ich eher ein Fan von objektorientierter Programmierung bin, werde ich zeigen, wie man diese Vorlagen mit prozeduralem Code einbindet.

Wenn Sie möchten, können Sie diesen Code ganz einfach in objektorientierten Code umwandeln. Außerdem gehe ich davon aus, dass Sie dies auch für benutzerdefinierte Beitragstypen einschließen.

Sie können eine Bedingung für einen benutzerdefinierten Beitragstyp immer weglassen, wenn Sie diese Vorlagen einfach einbinden möchten, aber meiner Erfahrung nach finde ich es selten, dass diese Situationen keine benutzerdefinierten Beitragstypen verwenden, aber ich kenne Ihre Situation nicht.

Das heißt, hier ist der Code.

Haken definieren

Zuerst müssen wir die Hooks definieren. Dies ist relativ einfach, da wir die oben beschriebenen Hooks verwenden werden.

Zuerst die einzelne Vorlage :

Und dann die Archivvorlage :

Und jetzt können wir den Code für jede der Funktionen implementieren.

Hinzufügen des Codes

Also schauen wir uns zuerst die einzelne Vorlage an :

Und jetzt die Archivvorlage :

Wenn Sie sich den Code genau angesehen haben, wissen Sie, dass es kaum Unterschiede gibt. Tatsächlich kann der allgemeine Prozess wie folgt umrissen werden:

  1. Definiere den Haken,
  2. Suchen Sie die Vorlage,
  3. Überprüfen Sie den benutzerdefinierten Beitragstyp,
  4. Die Vorlage existiert, verwenden Sie sie
  5. Verwenden Sie andernfalls die Standardvorlage

Und dies ist der Prozess sowohl für Einzel- als auch für Archivvorlagen.

Kompatible Vorlagen schreiben

Und schließlich, und das ist wichtig, besonders wenn Sie das Template so agnostisch wie möglich gestalten möchten, versuche ich, so viele eingebaute WordPress-Template-Tags wie möglich zu verwenden, wenn der Inhalt im Zusammenhang mit dem Plugin angezeigt wird. Auf diese Weise können Theme-Entwickler es einfach so gestalten, dass es zu ihrem Theme passt.

Nein, Sie werden nicht in der Lage sein, jedes Thema unterzubringen, aber das ist die Natur von WordPress-Themen. Es geht darum, so viel Arbeit wie möglich beim Abrufen und Rendern von Daten aus der Vorlage zu nehmen, damit Front-End-Entwickler sie einfach verwalten können.

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