Wir fahren fort, Code von unserem statischen Mockup auf unsere WordPress index.php-Seite zu portieren. Wir optimieren "den Loop" ein wenig, um genau das auszugeben, was wir wollen.
Wir gehen tief genug auf der Seite, wo WordPress-Funktionen wie get_sidebar() auftauchen. Vorhersehbar verhält sie sich viel wie get_header() funktioniert. Sie holt die Datei sidebar.php und platziert deren Inhalt auf der Seite genau dort, wo sich diese Funktion befindet.
Wir löschen eine ganze Menge Code, mit dem wir Markup simuliert haben, das wir von anderswoher bekommen, und ersetzen es durch Funktionen, die letztendlich dasselbe Markup ausgeben. Zum Beispiel verschwindet eine ganze Menge Markup, das den Umfragebereich erzeugte, und wir fügen wp_polls() ein, eine Funktion, die all die Dinge ausgibt, die benötigt werden, um die Umfrage in unserem eigentlichen WordPress-Template anzuzeigen.
Bevor wir zu aufgeregt werden und uns unsere Arbeit ansehen, widmen wir uns der Datei footer.php und räumen sie auf. Die wichtige Aufgabe hier ist, dass wir alle Elemente schließen müssen, die wir in der Datei header.php geöffnet, aber nicht geschlossen haben. In unserem Fall ist es nur einer: Das öffnende Tag für <div class="page-wrap"> muss geschlossen werden.
Wir verknüpfen die richtigen Skripte im Footer, löschen eine Menge v9-spezifischen Kram und machen die Sache rund.
Als wir uns die Seite ansehen, stellen wir fest, dass es einige Anzeige-Schönheitsfehler gibt, mit denen wir uns auseinandersetzen müssen. Wir verbringen das Ende des Videos damit, diese Probleme zu debuggen, die sich als neue Stellen herausstellen, an denen wir auf das Clearen von Floats und das Schließen von Tags achten müssen.
Chris,
Wie heißt der Aufruf, den man verwendet, um Elemente oder ein Element nach einer bestimmten Anzahl von Beiträgen anzuzeigen?
Es gibt keinen spezifischen "Aufruf". Es gibt etwas in WordPress, das "The Loop" genannt wird. Es ist buchstäblich eine PHP
for-Schleife. Ich setze eine Variable namens$iauf 1 und erhöhe sie bei jeder Iteration der Schleife um 1. Dann prüfe ich während der Schleife, ob$i == 2ist, und gebe diese Anzeigen aus, wenn es wahr ist. Nichts Besonderes, nur Logik.Ok danke, ich habe mich nur gefragt, ob es dafür einen Ausschnitt in Digging Into WP gibt.
Hallo Chris,
Nur ein kurzer Gedanke zu den WordPress-spezifischen Style-Includes (da ich sie in diesem Video bemerkt habe): Die akzeptiertere Methode für seitenübergreifende Includes ist die Verwendung von
functions.phpmitwp_enqueue_style, die die Stylesheets im Hookwp_head();einfügt.Ein Beispiel wäre also
Ich kann sehen, wie das nett wäre.
Im Wesentlichen hält man also die Logik aus den Views heraus, was etwas ist, wofür ich mich generell ziemlich stark einsetze. Wenn ich an einer Rails-Anwendung arbeite, hasse ich es absolut, wenn Logik in die Views sickert, doch genau das passiert hier in unserer
header.php-Datei. Ich schätze, ich bin dem in WordPress weniger abgeneigt, da wir uns wahrscheinlich nie davon befreien werden, zum Beispiel die "The Loop" in den Views zu haben, was eine andere Art von Logik ist.Eine weitere Überlegung für Ihre Homepage ist, von
query_postswegzukommen und stattdessen neue Instanzen vonWP_Queryzu verwenden. Die aktuelle konventionelle Weisheit besagt, dass Siequery_posts**niemals** verwenden sollten, da dies eine zusätzliche SQL-Abfrage ausführt und Ihre Website weniger effizient macht. Ich überlasse es anderen, besser zu erklären, warum.Andrew Nacins "You Don't Know Query" Folien
Wann WP-Query, query_posts und pre_get_posts verwenden?