Inzwischen haben Sie die grundlegenden Konzepte der Verwendung von Twig durch Timber gelesen, während Sie ein modulares WordPress-Design erstellen. Wir haben auch die Blockverschachtelung und Mehrfachvererbung mit Twig basierend auf dem DRY-Prinzip untersucht. Heute werden wir untersuchen, wie Anhangbilder, WordPress-Menüs und Benutzer in einem Design mit Twig über das Timber-Plugin angezeigt werden.
Bilder sind eines der wichtigsten Elemente für jedes WordPress-Theme. Bei normalen WordPress-Codierverfahren werden Bilder in PHP in die normalen HTML-Bild-Tags integriert. Timber bietet jedoch einen recht umfassenden Umgang mit der img
(Bild) -Tag, der modular und sauber ist.
Es sind Bilder an das Miniaturbildfeld des Beitrags angehängt. Diese können einfach über die Twig-Dateien abgerufen werden post.thumbnail
. Es ist so einfach!
Beginnen wir mit einem praktischen Beispiel. Unsere single.php
Datei sieht so aus:
Hier habe ich die verwendet
TimberPost ()
Funktion aus ganz offensichtlichen Gründen. Dies wird überall in Timber verwendet, um aus WordPress abgerufene Posts darzustellen und sie für Twig-Vorlagen verfügbar zu machen.Da das vorgestellte Bild an die Postdaten angehängt wird, müssen wir es jetzt am Frontend abrufen. Also die Twig-Datei dafür,
single.twig
, sieht so aus:# Sinlge Template: 'single.twig' # % erweitert "base.twig"% % block content%% endblock%In Zeile 9 den Code
post.thumbnail.src
Ruft das vorgestellte Bild (Miniaturbild) des Beitrags ab und zeigt es folgendermaßen an:Sie können diese Codesyntax verwenden, um beliebig viele Miniaturbilder abzurufen.
Es gibt noch viel mehr, mit denen Sie mit Timber experimentieren können. Zum Beispiel können Sie die Größe auch ändern über:
Mit der
Größe ändern ()
, Mit dieser Funktion können Sie dem Bild, in dem sich der erste Parameter befindet, neue Bemaßungen hinzufügenBreite
und der zweite istHöhe
. Wenn Sie das Bild proportional skalieren möchten, lassen Sie die Option ausHöhe
Attribut. Jetzt wird die Syntax:Das Frontend zeigt das gleiche Bild wie folgt:
Wenn Sie mehr erkunden möchten, probieren Sie das Image-Kochbuch.
Verwenden
TimberImage ()
Stellen Sie sich ein Szenario vor, in dem ein Entwickler Bilder über die Bild-ID abrufen möchte oder ein externes Bild über eine URL usw. anzeigen möchte. Für einen solchen erweiterten Ansatz bietet Timber eine Klasse an,
TimberImage ()
, um die Bilder darzustellen, die von WordPress abgerufen werden.Verwendungszweck
Nehmen wir ein Beispiel für unser
single.php
Datei, die jetzt so aussieht:Diesmal benutze ich die
TimberImage ()
Klasse, die die Bild-ID übernimmt8
als dessen Parameter. Der Rest der Codierroutine ist genauso. Lassen Sie uns dieses Bild über die Twig-Datei abrufensingle.twig
.Der darin gespeicherte Wert
$ context
custom_img Element, d.h..custom_img
, ruft das Bild über seine ID auf, um es im Frontend wie folgt anzuzeigen:Um das Bild über eine externe URL abzurufen, können Sie dieser Syntax folgen.
Dieses Mal gibt es anstelle der Bild-ID eine externe Bild-URL, die im Frontend wie folgt angezeigt wird:
Um weitere Funktionen dieser Funktion kennenzulernen, können Sie die Dokumentation überprüfen.
Menüs in Holz
Nun, wie würden Sie beim Rendern eines WordPress-Menüs mit Twig-Vorlagen vorgehen? Das ist eine knifflige Sache. Aber halt! Holz liefert Ihnen seine
TimberMenu ()
Klasse, die Ihnen helfen kann, die WordPress-Menüs in Twig-Dateien als vollständige Schleife darzustellen. Lass uns einen Blick darauf werfen.Verwendungszweck
Das gesamte Konzept des Abrufens der Menüpunkte dreht sich um die Menüobjekt. Es gibt zwei Möglichkeiten, den Kontext zu definieren. Die erste besteht darin, das Menüobjekt auf jeder Seite verfügbar zu machen, indem es wie in der globalen Funktion get_context () hinzugefügt wird
Functions.php
Datei. Zweitens können Sie ein bestimmtes Menü mit seiner ID für eine bestimmte PHP-Vorlage hinzufügen.Unabhängig von den beiden Methoden, sobald das Menü für das Timber verfügbar ist
$ context
Array können Sie alle Menüelemente davon abrufen. Aber ich bevorzuge es, es global zu definieren. Also geh zumFunctions.php
Datei und fügen Sie den folgenden Code ein:Hier habe ich also einen benutzerdefinierten Funktionsaufruf definiert
add_to_context
. In dieser Funktion befinden sich einige Daten, die ich bei jedem PHP-Template über dieget_context ()
Funktion. In Zeile 13 finden Sie eine Instanz vonTimberMenu ()
gegen das Elementmenü in der$ data
Array.Dadurch wird der Twig-Vorlage ein Standard-WordPress-Menü als Objekt zur Verfügung gestellt, das wir durchlaufen können. Das
TimberMenu ()
Die Funktion kann Parameter wie das Menü Slug oder ID annehmen.Erstellen wir eine Twig-Vorlage mit dem Namen
menu.twig
Datei.# Menüvorlage: 'menu.twig' #Der obige Code führt eine Schleife innerhalb dieser Twig-Vorlage aus. Zeile # 5 führt a
zum
Schleife für jeden Menüpunkt und zeigt den Titel jedes Menüs anArtikel
in einer ungeordneten Liste. Die Schleife läuft bis zu allen Schlüsselwertpaaren vonSpeisekarte
Objekte werden iteriert und im Frontend aufgelistet.Ich ging voran und nahm die
menu.twig
Vorlage in derbase.twig
Vorlage in Zeile 11.# Basisvorlage: 'base.twig' # % block html_head_container% % include 'header.twig'% % endblock% % include "menu.twig"%% block content%% include "footer.twig"%ES TUT UNS LEID! Kein Inhalt gefunden!
% endblock%