Heim  >  Artikel  >  CMS-Tutorial  >  Die Leistungsfähigkeit von WP_Query entfesseln: Eigenschaften und Methoden erkunden

Die Leistungsfähigkeit von WP_Query entfesseln: Eigenschaften und Methoden erkunden

王林
王林Original
2023-09-04 08:05:06655Durchsuche

释放 WP_Query 的力量:探索属性和方法

Willkommen zu einer weiteren Folge der Mastering WP_Query-Reihe. Wie geht es uns bisher? Ich hoffe, dass Ihnen diese Tutorials genauso viel Spaß machen, wie uns das Schreiben.

In diesem Tutorial erfahren Sie mehr über die Eigenschaften und Methoden der WP_Query-Klasse. Aber zunächst hielt ich es für angebracht, „Eigenschaften“ und „Methoden“ im Unterricht zu besprechen.

Können wir?

Was genau sind Eigenschaften und Methoden?

In PHP gibt es eine einfachere Möglichkeit, Code zu schreiben: Objektorientierte Programmierung oder OOP. Für OOP verwenden wir „Klassen“ als Blaupausen – diesen Begriff habe ich einem klassischen Beitrag auf Code Tuts+, „Object-Oriented PHP for Beginners“ von Jason Lengstorf, entnommen:

Zum Beispiel ist eine Klasse wie ein Bauplan für ein Haus. Es definiert die Form des Hauses auf dem Papier und definiert und plant klar die Beziehung zwischen den verschiedenen Teilen des Hauses, auch wenn das Haus nicht existiert.

(Denken Sie daran, dass WP_Query eine wichtige Klasse im Kern von WordPress ist.)

Wenn Sie das Konzept der PHP-Klassen verstehen, werden „Eigenschaften“ und „Methoden“ sehr leicht zu verstehen, da diese Wörter nur Synonyme für „Variablen“ und „Funktionen“ sind. Ja, Eigenschaften sind Variablen von PHP-Klassen und Methoden sind Funktionen von PHP-Klassen.

Da wir nun besprochen haben, was sie sind, wollen wir uns mit den einzelnen Eigenschaften und Methoden vertraut machen.

Warnung: Es ist unklug, Eigenschaften direkt zu ändern. Wie der Kodex sagt, sollten Sie die Methoden von WP_Query verwenden, um mit ihnen zu interagieren.

Attribute der WP_Query-Klasse

Beginnen wir mit den Eigenschaften oder Variablen der WP_Query-Klasse.

Abfragezeichenfolge: $query

Diese Eigenschaft speichert die an das $wp_query-Objekt übergebene Abfrage.

Abfragevariablenarray: $query_vars

Diese Eigenschaft speichert ein assoziatives Array von $querys Variablen (und ihren Werten).

Abfrageobjekt: $queried_object

Dieses Attribut speichert das Objekt der aktuellen Abfrage, beispielsweise das $post 对象(如果是 post 查询)或 $author-Objekt (wenn es sich um eine Autorenabfrage handelt).

Abfrageobjekt-ID: $queried_object_id

Dieses Attribut speichert die ID des Abfrageobjekts.

Fragen Sie die zurückgegebenen Beiträge ab: $posts

Diese Eigenschaft speichert die von der Abfrage zurückgegebenen Beiträge.

Anzahl der angezeigten Beiträge: $post_count

Dieses Attribut speichert die Anzahl der aktuell abgefragten Beiträge.

Die Anzahl der von der Abfrage zurückgegebenen Beiträge: $found_posts

Diese Eigenschaft speichert die Anzahl der Beiträge in der SQL-Abfrage, die die LIMIT-Klausel nicht enthalten.

Seitenzahl: $max_num_pages

Diese Eigenschaft speichert die Anzahl der Seiten – berechnet durch Division von $found_posts 除以 $posts_per_page durch $posts_per_page.

Index des aktuellen Beitrags: $current_post

Dieses Attribut speichert die Indexnummer des aktuellen Elements in der Schleife. Wenn die Schleife beispielsweise gerade erst begonnen hat, wird die -1,并且通过 next_post()-Methode inkrementiert.

Aktueller Beitrag: $post

Dieses Attribut speichert den aktuellen Beitrag.

Boolescher Wert der Bedingungsbezeichnung: $is_{conditional}

Die folgenden Eigenschaften werden als boolesche Werte gespeichert und geben Auskunft über den aktuellen Beitragsstatus:

  • $is_single: Überprüfen Sie, ob es sich um einen einzelnen Beitrag eines beliebigen Beitragstyps handelt (außer den Beitragstypen „Anhang“ und „Seite“).
  • $is_page: Überprüfen Sie, ob es sich um eine Seite handelt.
  • $is_archive: Überprüfen Sie, ob es sich um eine Archivseite handelt.
  • $is_preview: Überprüfen Sie, ob es sich um eine Beitragsvorschau handelt.
  • $is_date: Überprüfen Sie anhand des Datums, ob es sich um eine archivierte Seite handelt.
  • $is_year: Überprüfen Sie, ob es sich um eine Archivseite basierend auf dem Jahr handelt.
  • $is_month: Überprüfen Sie, ob es sich um eine monatsbasierte Archivseite handelt.
  • $is_time: Überprüfen Sie anhand der Zeit (stündlich, Minute oder Sekunde), ob die Seite archiviert ist.
  • $is_author: Überprüfen Sie, ob es sich um die Archivseite des Autors handelt.
  • $is_category: Überprüfen Sie, ob es sich um eine Kategorie-Archivseite handelt.
  • $is_tag: Überprüfen Sie, ob es sich um eine Tag-Archivseite handelt.
  • $is_tax: Prüfen Sie, ob es sich um eine Kategorie-Archivseite handelt.
  • $is_search: Überprüfen Sie, ob es sich um eine „Suchergebnisse“-Seite handelt.
  • $is_feed: Überprüfen Sie, ob es sich um einen Feed handelt.
  • $is_comment_feed: Überprüfen Sie, ob es sich um einen Kommentar-Feed handelt.
  • $is_trackback: Überprüfen Sie, ob es sich um eine Referenz handelt.
  • $is_home: Überprüfen Sie, ob es sich um die Hauptseite des Blogs handelt.
  • $is_404: Überprüfen Sie, ob es sich um eine 404-Fehlerseite handelt.
  • $is_comments_popup: Überprüfen Sie, ob es sich um ein Kommentar-Popup handelt.
  • $is_admin: Überprüfen Sie, ob es sich um das Admin-Panel handelt.
  • $is_attachment: Überprüfen Sie, ob es sich um einen Anhang handelt.
  • $is_singular: Überprüfen Sie, ob es sich um einen einzelnen Beitrag eines beliebigen Beitragstyps handelt (einschließlich der Beitragstypen „Anhang“ und „Seite“).
  • $is_robots:检查是否是对 robots.txt Dateiabfrage.
  • $is_posts_page: Überprüfen Sie, ob es sich um eine „Beitragsseite“ handelt (eingestellt auf der Seite „Leseeinstellungen“ des Admin-Panels).
  • $is_paged: Prüfen Sie, ob es sich um eine Paging-Abfrage handelt und nicht um die Startseite.

Methoden der WP_Query-Klasse

Da wir nun mit den Eigenschaften fertig sind, gehen wir zu den WP_Query Methoden (Funktionen) der Klasse über.

init()

Diese Methode initialisiert einfach das Objekt und setzt alle Eigenschaften auf NULL0FALSE.

parse_query( $query )

Diese Methode verwendet $query 属性来解析查询并填充所有其他属性(除了 $posts$post_count$post$current_post).

parse_query_vars()

Diese Methode analysiert Abfragevariablen erneut.

get( $query_var )

Diese Methode ruft die angegebene Abfragevariable ab.

设置( $query_var, $value )

Diese Methode setzt die angegebene Abfragevariable auf einen bestimmten Wert.

&get_posts()

Diese Methode gibt den von der Abfrage angeforderten Beitrag zurück und füllt das Attribut $posts$post_count aus.

next_post()

Diese Methode fügt den nächsten Artikel in $current_post 索引并前进到 $posts hinzu und gibt das aktuelle Artikelobjekt zurück. (Diese Methode muss innerhalb einer Schleife verwendet werden, um ordnungsgemäß zu funktionieren.)

the_post()

Diese Methode legt eine globale $post-Variable unter Verwendung der Daten aus dem nächsten Artikel fest. (Diese Methode muss innerhalb einer Schleife verwendet werden, um ordnungsgemäß zu funktionieren.)

have_posts()

Diese Methode prüft, ob noch Beiträge zur Verarbeitung übrig sind, und wenn nicht, wird zurückgegeben FALSE. (Diese Methode muss vor der Schleife verwendet werden, damit sie ordnungsgemäß funktioniert.)

rewind_posts()

Diese Methode setzt lediglich die Eigenschaften $current_post und $current_post$post zurück.

&query( $query )

Diese Methode ruft ihre beiden Geschwistermethoden auf: das Ergebnis von parse_query()get_posts(),并返回 get_posts().

get_queried_object()

Diese Methode gibt das abgefragte Objekt zurück. (Setzen Sie $queried_object, falls noch nicht geschehen.)

get_queried_object_id()

Diese Methode ähnelt der obigen Methode und gibt die ID des Abfrageobjekts zurück ($queried_object_id).

Kurztipp: Wenn einer Methode ein &-Symbol vorangestellt ist, bedeutet dies, dass die Methode als Referenz zurückgegeben wird.

Heutige Zusammenfassung

Ich hoffe, ich konnte Ihnen verständlich machen, was „Eigenschaften“ und „Methoden“ für den Unterricht bedeuten. Wenn Sie den Zweck der Eigenschaften und Methoden der WP_Query-Klasse verstehen, kann ich sagen, dass ich einen ziemlich guten Job mache!

Haben Sie etwas zu diesem Artikel hinzuzufügen? Teilen Sie uns Ihre Gedanken im Kommentarbereich unten mit. Wenn Ihnen dieser Artikel gefallen hat, vergessen Sie nicht, ihn mit Ihren Freunden zu teilen.

Wir sehen uns im nächsten Teil dieser Serie!

Das obige ist der detaillierte Inhalt vonDie Leistungsfähigkeit von WP_Query entfesseln: Eigenschaften und Methoden erkunden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn