Erforschen der WordPress Get_Posts -Funktion
Key Takeaways
- Die Funktion get_posts () in WordPress wird verwendet, um Beiträge aus der Datenbank abzurufen, indem benutzerdefinierte Filter angewendet und das Endergebnis basierend auf einer Reihe von Parametern sortiert werden. Es gibt ein Array von WP_POST -Objekten zurück, die jeweils einen einzelnen Beitrag darstellen.
- Die Funktion get_posts () wird gegenüber dem Objekt WP_Query bevorzugt, da letztere die Hauptschleife verändert und möglicherweise Site -Probleme verursacht. Die Funktion get_posts () und get_pages () rufen beide Beiträge ab, unterscheiden sich jedoch in Parameternamen, Werten und Methoden des Abrufens.
- Die Funktion get_posts () akzeptiert ein Array von Parametern, um benutzerdefinierte Filter anzuwenden und Ergebnisse zu sortieren. Diese Parameter umfassen Posts_per_Page, Page, Tax_query, OrderBy, Order, Ausschluss, Meta_Key, Meta_Value, post_type und post_status.
- Die Funktion get_posts () kann verwendet werden, um die beliebtesten Beiträge, zufälligen Beiträge, Beiträge mit passender Metaschlüssel und Wert und Posts mit einem benutzerdefinierten Post -Typ mit einem benutzerdefinierten Taxonomie -Namen abzurufen. Die zurückgegebenen Ergebnisse werden dann zur weiteren Verwendung durchgeschaltet.
Viele WordPress -Plugins rufen Beiträge aus der Datenbank ab, indem Sie die Sortierreihenfolge anpassen und Beiträge basierend auf einem bestimmten Meta -Schlüssel oder einer Taxonomie abrufen. Haben Sie sich jemals gefragt, wie diese Plugins angepasste Beiträgelisten abrufen, ohne SQL -Abfragen zu schreiben? In diesem Tutorial lernen wir genau das.

In diesem Artikel untersuchen wir die Funktion von Get_Posts () mit einigen Beispielen, wie sie in Ihren eigenen Projekten verwendet werden. Wir werden auch einige typische Anwendungsfälle für diese Funktion abdecken und wie sie sich vom WP_Query -Objekt und der Funktion get_pages unterscheidet.
Was ist die Funktion get_posts ()?
Die Funktion get_posts ist seit WordPress 1.2.0 in WordPress Core verfügbar. Diese Funktion wird im Grunde genommen verwendet, um Beiträge aus der Datenbank abzurufen, indem benutzerdefinierte Filter angewendet und das Endergebnis basierend auf einer Reihe von Parametern sortiert werden.
Die Funktion get_posts () gibt ein Array von WP_POST -Objekten zurück. Jedes WP_POST -Objekt repräsentiert einen einzelnen Beitrag.
intern get_posts verwendet das WP_Query -Objekt, um die SQL -Abfragen basierend auf dem übergebenen Parametersatz zu konstruieren und auszuführen.
Hinweis: Beiträge bedeutet Post-, Seite und benutzerdefinierte Beitragstyp.
Warum nicht das WP_Query -Objekt direkt verwenden?
Plugins Verwenden Sie die Funktion get_posts anstelle von WP_Query -Objekt, da die Verwendung des WP_QUERY -Objekts direkt die Hauptschleife (d. H. Die globale Variable $ wp_query) verändert, die Site -Probleme verursachen würde.
Was ist der Unterschied zwischen get_posts () und get_pages () Funktionen?
Beide werden verwendet, um Beiträge aus der WordPress -Datenbank abzurufen. Hier sind jedoch einige der Unterschiede zwischen ihnen:
- Einige der Parameternamen und -Werte unterscheiden sich zwischen ihnen. Obwohl sie sich unabhängig von den Namen der Parameter genauso verhalten.
- Die Funktion get_pages () ruft derzeit keine Beiträge basierend auf den Parametern meta_key und meta_value ab.
- Die Funktion get_pages () verwendet nicht das WP_QUERY -Objekt. Stattdessen konstruiert und führt SQL -Abfragen direkt auf.
Get_Posts () Funktionsparameter
Die Funktion get_posts nimmt nur ein Argument als Array. Das Array enthält die verschiedenen Parameter, um benutzerdefinierte Filter anzuwenden und das Ergebnis zu sortieren.
Hier ist ein Code -Beispiel, in dem angezeigt wird, wie diese Funktion aufgerufen wird, und die verschiedenen verfügbaren Parameter:
<span><span><?php </span></span><span> </span><span><span>$args = array( </span></span><span> <span>"posts_per_page" => 5, </span></span><span> <span>"paged" => 1 </span></span><span> <span>"tax_query" => array( </span></span><span> <span>array( </span></span><span> <span>"taxonomy" => "category", </span></span><span> <span>"field" => "slug", </span></span><span> <span>"terms" => "videos,movies", </span></span><span> <span>) </span></span><span> <span>), </span></span><span> <span>"orderby" => "post_date", </span></span><span> <span>"order" => "DESC", </span></span><span> <span>"exclude" => "1123, 4456", </span></span><span> <span>"meta_key" => "", </span></span><span> <span>"meta_value" => "", </span></span><span> <span>"post_type" => "post", </span></span><span> <span>"post_status" => "publish" </span></span><span><span>); </span></span><span> </span><span><span>$posts_array = get_posts($args); </span></span><span> </span><span><span>?></span></span>
Es sind mehr Parameter verfügbar, aber dies sind die am häufigsten verwendeten. Schauen wir uns jede dieser Parameter an:
- pOSTS_PER_PAGE: Dieser Parameter definiert die Anzahl der zu zurückgegebenen Beiträge. Verwenden Sie -1, wenn Sie alle Beiträge möchten.
- PAGED: Ermöglicht es uns, zwischen einer Reihe von Beiträgen zu navigieren, während wir den Parameter posts_per_page verwenden. Es wird zur Paginierung verwendet. Zum Beispiel: Angenommen, die posts_per_page ist 10 und es gibt 20 Beiträge im Ergebnis. Wenn Sie 2 PAGED 2 pagen, werden die letzten 10 Beiträge zurückgegeben.
- Tax_Query: Stellen Sie Beiträge einer bestimmten Taxonomie -Schnecke anzeigen, d. H. Filtern Sie die Beiträge der anderen Taxonomie -Schnecke heraus. Begriffe können eine von der Kommas getrennte Zeichenfolge, die mehrere Taxonomie -Slugs darstellt, annehmen.
- orderBy: Es wird verwendet, um die abgerufenen Beiträge zu sortieren. Einige mögliche Werte sind: "Keine", "Date", "Rand", "comment_count", "meta_value", "meta_value_num" usw., während Sie mit "meta_value" und "meta_value_num" sortiert werden, müssen Sie den Parameter meta_key bereitstellen.
- Reihenfolge: Bezeichnet die aufsteigende oder absteigende Reihenfolge des Parameters "OrderBy". Mögliche Werte sind "Desc" oder "ASC".
- Ausschließen: Es erfordert eine von der Kommas getrennte Liste von Post -IDs, die von einer Datenbanksuche ausgeschlossen werden.
- meta_key und meta_value: Wenn Sie nur meta_key angeben, werden Beiträge mit dem Schlüssel zurückgegeben. Wenn Sie auch meta_value angeben, werden Beiträge, die mit dem meta_value für den meta_key entsprechen, zurückgegeben.
- post_type: Ruft Inhalte basierend auf Post-, Seite oder benutzerdefiniertem Post -Typ ab. Denken Sie daran, dass der Standardpost_Type nur auf Posts eingestellt ist, jedoch nicht auf Seiten.
- post_status: Ruft Beiträge nach Status des Beitrags ab. Mögliche Werte sind: "Veröffentlichen", "Ausstehende", "Entwurf", "Zukunft", "Any" oder "Müll".
Das WP_POST -Objekt
Die Funktion get_posts gibt ein Array zurück, das WP_POST -Objekte enthält. Hier sind die wichtigen Eigenschaften des WP_POST -Objekts:
- id: id des Beitrags
- post_author: Autor Name des Beitrags
- post_type: Typ des Beitrags
- post_title: Titel des Beitrags
- post_date: Datum, auf dem der Beitrag veröffentlicht wurde. Format: 0000-00-00 00:00:00
- post_content: Inhalt des Beitrags.
- post_status: Status des Beitrags
- comment_count: Anzahl der Kommentare für den Beitrag
Beispiele für get_posts
Schauen wir uns einige Beispiele anhand der Funktion get_posts an.
beliebteste Beiträge
Wenn Sie die oberste N -Nummer der am meisten besprochenen Beiträge auf Ihrer Website anzeigen möchten, können Sie Get_Posts verwenden, um sie abzurufen. Hier ist ein Beispiel:
<span><span><?php </span></span><span> </span><span><span>$args = array( </span></span><span> <span>"posts_per_page" => 5, </span></span><span> <span>"paged" => 1 </span></span><span> <span>"tax_query" => array( </span></span><span> <span>array( </span></span><span> <span>"taxonomy" => "category", </span></span><span> <span>"field" => "slug", </span></span><span> <span>"terms" => "videos,movies", </span></span><span> <span>) </span></span><span> <span>), </span></span><span> <span>"orderby" => "post_date", </span></span><span> <span>"order" => "DESC", </span></span><span> <span>"exclude" => "1123, 4456", </span></span><span> <span>"meta_key" => "", </span></span><span> <span>"meta_value" => "", </span></span><span> <span>"post_type" => "post", </span></span><span> <span>"post_status" => "publish" </span></span><span><span>); </span></span><span> </span><span><span>$posts_array = get_posts($args); </span></span><span> </span><span><span>?></span></span>
Hier verwenden wir den Parameter "OrderBy", um die Beiträge basierend auf der Anzahl der Kommentare zu sortieren und die Top 10 Beiträge abzurufen.
zufällige Beiträge
Sie können auch problemlos zufällige Beiträge abrufen. Dies ist hilfreich, um Benutzern einen weiteren Artikel auf Ihrer Website zu empfehlen, sobald sie das aktuelle gelesen haben. Hier ist der Code dafür:
<span><span><?php </span></span><span> <span>$args = array("posts_per_page" => 10, "orderby" => "comment_count"); </span></span><span> <span>$posts_array = get_posts($args); </span></span><span> <span>foreach($posts_array as $post) </span></span><span> <span>{ </span></span><span> <span>echo "<h1>" . $post->post_title . "</h1><br>"; </span></span><span> <span>echo "<p>" . $post->post_content . "</p><br>"; </span></span><span> <span>} </span></span><span><span>?></span></span>
Im obigen Beispiel haben wir den Wert Rand an den Parameter Order_by übergeben.
Beiträge mit passender Metaschlüssel und Wert
Möglicherweise möchten wir alle Beiträge abrufen, die einen bestimmten Metatastatur und Wert zugewiesen haben. Zum Beispiel: Einige Blogs haben einen Rezensent für jeden Artikel. Vielleicht möchten wir Artikel abrufen, die von einem bestimmten Rezensent überprüft werden.
Hier ist der Code, um genau das zu tun:
<span><span><?php </span></span><span> <span>$args = array("posts_per_page" => 1, "orderby" => "rand"); </span></span><span> <span>$posts_array = get_posts($args); </span></span><span> <span>foreach($posts_array as $post) </span></span><span> <span>{ </span></span><span> <span>echo "<h1>" . $post->post_title . "</h1><br>"; </span></span><span> <span>echo "<p>" . $post->post_content . "</p><br>"; </span></span><span> <span>} </span></span><span><span>?></span></span>
Hier rufen wir alle von "NarayanPrusty" überprüften Beiträge ab. Wir gehen davon aus
benutzerdefinierten Beitragstyp mit benutzerdefinierter TaxonomieMöglicherweise möchten wir Beiträge von einem benutzerdefinierten Post -Typ mit einem benutzerdefinierten Taxonomie -Namen abrufen. Betrachten Sie dieses Code -Beispiel:
<span><span><?php </span></span><span> <span>$args = array("posts_per_page" => -1, "meta_key" => "reviewer", "meta_value" = "narayanprusty"); </span></span><span> <span>$posts_array = get_posts($args); </span></span><span> <span>foreach($posts_array as $post) </span></span><span> <span>{ </span></span><span> <span>echo "<h1>" . $post->post_title . "</h1><br>"; </span></span><span> <span>echo "<p>" . $post->post_content . "</p><br>"; </span></span><span> <span>} </span></span><span><span>?></span></span>
Schlussfolgerung
In diesem Artikel haben wir gesehen, wie die Funktion get_posts funktioniert, die verschiedenen Parameter, die sie unterstützt, durch das zurückgegebene Ergebnis und einige Beispielanlagen der Stichprobe durchläuft. Die Funktion get_posts ist eine der am häufigsten verwendeten WordPress -Funktionen. Ich hoffe, Sie können jetzt Ihre eigenen Projekte verwenden.
häufig gestellte Fragen (FAQs) über WordPress get_posts Funktion
Was ist der Unterschied zwischen Get_Posts und WP_Query in WordPress? Sie unterscheiden sich jedoch in ihrer Verwendung und Flexibilität. get_posts ist eine einfachere Funktion, ideal für Anfänger und für Situationen, in denen Sie nur eine bestimmte Reihe von Beiträgen abrufen müssen. Auf der anderen Seite ist WP_Query leistungsfähiger und flexibler. Es ermöglicht komplexere Abfragen und gibt Ihnen mehr Kontrolle über die WordPress -Schleife. Während Get_Posts einfacher zu bedienen ist, bietet WP_Query fortgeschrittenere Funktionen für das Anpassen Ihrer Abfragen.
Wie kann ich die Anzahl der von get_posts zurückgegebenen Beiträge ändern? Standardmäßig wird es auf 5 gesetzt. Wenn Sie alle Beiträge abrufen möchten, können Sie "Numberposts" auf -1 festlegen. Um beispielsweise 10 Beiträge zu erhalten, würden Sie: get_posts (array ('numberPosts' => 10));
Kann ich Get_Posts verwenden, um benutzerdefinierte Post -Typen abzurufen?
Ja, Sie Kann Get_Posts verwenden, um benutzerdefinierte Post -Typen abzurufen. Sie müssen nur den Parameter "post_type" in Ihrer Abfrage angeben. Wenn Sie beispielsweise einen benutzerdefinierten Beitragstyp mit dem Namen "Produkte" haben, können Sie diese Beiträge mit: get_posts (Array ('post_type' => 'products') abrufen;
Wie kann ich die zurückgegebenen Beiträge sortieren von get_posts? "OrderBy" bestimmt das Feld, um nach zu sortieren, und "Ordnung" bestimmt die Sortierreihenfolge (ASC für aufsteigend und zum Abstieg). Um beispielsweise Beiträge nach dem Titel in aufsteigender Reihenfolge zu sortieren, würden Sie: get_posts (array ('orderBy' => 'title', 'order' => 'asc');
Kann ich Get_Posts verwenden Um Beiträge aus einer bestimmten Kategorie abzurufen? Sie müssen nur den Parameter "Kategorie" in Ihrer Abfrage angeben. Um beispielsweise Beiträge aus der Kategorie mit der ID 3 zu erhalten, würden Sie: get_posts (Array ('Kategorie' => 3));
Wie kann ich Beiträge aus mehreren Kategorien mit Get_Posts abrufen? >
Um Beiträge aus mehreren Kategorien abzurufen, können Sie ein Array von Kategorie -IDs an den Parameter "Kategorie" übergeben. Um beispielsweise Beiträge aus den Kategorien mit den IDs 3 und 4 zu erhalten, würden Sie: get_posts (Array ('Kategorie' => Array (3, 4));Kann ich Get_Posts verwenden, um abzurufen Beiträge eines bestimmten Autors? Sie müssen nur den Parameter "Autor" in Ihrer Abfrage angeben. Um beispielsweise Beiträge des Autors mit der ID 1 zu erhalten, würden Sie: get_posts (Array ('Autor' => 1) verwenden; ? Um beispielsweise Beiträge zu erhalten, die einen Meta -Schlüssel mit 'Farbe' und einen Meta -Wert von 'Blue' haben, würden Sie: get_posts (array ('meta_key' => 'color', 'meta_value' => 'Blue') verwenden. );
Kann ich Get_Posts verwenden, um Beiträge mit einem bestimmten Tag zu abrufen? Sie müssen nur den Parameter "Tag" in Ihrer Abfrage angeben. Um beispielsweise Beiträge mit dem Tag "WordPress" zu erhalten, würden Sie: get_posts (Array ("Tag" => "WordPress");
verwenden;
Wie kann ich Beiträge aus einem bestimmten Datumsbereich mit Get_Posts abrufen? Dieser Parameter akzeptiert ein Array von Arrays, wobei jedes innere Array eine Datumsabfrageklausel definiert. Um beispielsweise Beiträge ab Januar 2020 zu erhalten, würden Sie: get_posts (Array (’Date_query’ => Array (Array („Jahr“ => 2020, „Monat“ => 1)));
Das obige ist der detaillierte Inhalt vonErforschen der WordPress Get_Posts -Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Kürzlich haben wir Ihnen gezeigt, wie Sie ein personalisiertes Erlebnis für Benutzer erstellen können, indem Benutzer ihre bevorzugten Beiträge in einer personalisierten Bibliothek retten können. Sie können personalisierte Ergebnisse auf eine andere Ebene bringen, indem Sie an einigen Stellen (d. H. Begrüßungsbildschirme) ihre Namen verwenden. Glücklicherweise macht es WordPress sehr einfach, Informationen über angemeldete Benutzer zu erhalten. In diesem Artikel zeigen wir Ihnen, wie Sie Informationen zum aktuell angemeldeten Benutzer abrufen. Wir werden den Get_Currentuserinfo () verwenden; Funktion. Dies kann überall im Thema verwendet werden (Header, Fußzeile, Seitenleiste, Seitenvorlage usw.). Damit es funktioniert, muss der Benutzer angemeldet sein. Wir müssen also verwenden

Es gibt vier Möglichkeiten, die WordPress -Artikelliste anzupassen: Verwenden Sie Themenoptionen, verwenden Plugins (z. B. die Bestellung von Post -Typen, WP -Postliste, Boxy -Sachen), Code (Einstellungen in der Datei functions.php hinzufügen) oder die WordPress -Datenbank direkt ändern.

Blogs sind die ideale Plattform für Menschen, um ihre Meinungen, Meinungen und Meinungen online auszudrücken. Viele Neulinge sind bestrebt, eine eigene Website zu bauen, zögern jedoch, sich über technische Hindernisse oder Kostenprobleme zu sorgen. Da sich die Plattform jedoch weiterentwickelt, um die Fähigkeiten und Bedürfnisse von Anfängern zu erfüllen, wird sie jetzt einfacher als je zuvor. In diesem Artikel führen Sie Schritt für Schritt, wie Sie ein WordPress -Blog erstellen, von der Auswahl der Themen bis zur Verwendung von Plugins, um Sicherheit und Leistung zu verbessern und Ihnen dabei zu helfen, Ihre eigene Website problemlos zu erstellen. Wählen Sie ein Blog -Thema und eine Blog -Richtung Vor dem Kauf eines Domainnamens oder der Registrierung eines Hosts ist es am besten, die Themen zu identifizieren, die Sie abdecken möchten. Persönliche Websites können sich um Reisen, Kochen, Produktbewertungen, Musik oder jedes Hobby bewirken, das Ihre Interessen weckt. Wenn Sie sich auf Bereiche konzentrieren, an denen Sie wirklich interessiert sind, können Sie das kontinuierliche Schreiben fördern

Möchten Sie wissen, wie Sie untergeordnete Kategorien auf der Seite der übergeordneten Kategorie -Archivseite angezeigt werden? Wenn Sie eine Klassifizierungsarchivseite anpassen, müssen Sie dies möglicherweise tun, um es Ihren Besuchern nützlicher zu machen. In diesem Artikel zeigen wir Ihnen, wie Sie Kinderkategorien auf der Seite der Elternkategorie problemlos anzeigen können. Warum erscheinen Unterkategorien auf der Seite der übergeordneten Kategorie -Archiv -Seite? Indem Sie alle Kinderkategorien auf der Seite der übergeordneten Kategorie -Archiv -Seite anzeigen, können Sie sie für Besucher weniger allgemein und nützlicher machen. Wenn Sie beispielsweise einen WordPress-Blog über Bücher ausführen und eine Taxonomie namens "Thema" haben, können Sie Untertaxonomie wie "Roman", "Sachbücher" hinzufügen, damit Ihre Leser können

In der Vergangenheit haben wir geteilt, wie das Postexpirator -Plugin verwendet wird, um Beiträge in WordPress abzulehnen. Nun, beim Erstellen der Aktivitätslisten -Website fanden wir dieses Plugin sehr nützlich. Wir können abgelaufene Aktivitätslisten problemlos löschen. Zweitens ist es dank dieses Plugins auch sehr einfach, Beiträge nach Ablaufdatum zu sortieren. In diesem Artikel zeigen wir Ihnen, wie Sie Beiträge nach Ablaufdatum in WordPress sortieren. Aktualisierter Code, um Änderungen im Plugin zu reflektieren, um den benutzerdefinierten Feldnamen zu ändern. Danke Tajim, dass du uns in den Kommentaren informiert hast. In unserem spezifischen Projekt verwenden wir Ereignisse als benutzerdefinierte Post -Typen. Jetzt

Um eine Website mit WordPress -Host zu erstellen, müssen Sie: einen zuverlässigen Hosting -Anbieter auswählen. Kaufen Sie einen Domainnamen. Richten Sie ein WordPress -Hosting -Konto ein. Wählen Sie ein Thema aus. Seiten und Artikel hinzufügen. Installieren Sie das Plug-In. Passen Sie Ihre Website an. Veröffentlichen Sie Ihre Website.

Suchen Sie nach Möglichkeiten, Ihre WordPress -Website und Social -Media -Konten zu automatisieren? Mit der Automatisierung können Sie Ihre WordPress -Blog -Beiträge oder Updates automatisch auf Facebook, Twitter, LinkedIn, Instagram und mehr freigeben. In diesem Artikel zeigen wir Ihnen, wie Sie WordPress und Social Media mit IFTTT, Zapier und Uncanny Automator einfach automatisieren können. Warum WordPress und Social Media automatisieren? Automatisieren Sie Ihren WordPre

Einer unserer Benutzer hat andere Websites gefragt, wie die Anzahl der Abfragen und die Ladezeit des Seitens im Fußzeile angezeigt wird. Sie sehen dies oft in der Fußzeile Ihrer Website, und es kann so etwas wie: "64 Abfragen in 1,248 Sekunden" angezeigt. In diesem Artikel zeigen wir Ihnen, wie Sie die Anzahl der Abfragen und die Seitenladezeit in WordPress anzeigen. Fügen Sie einfach den folgenden Code ein, wo Sie in der Themendatei möchten (z. B. foote.php). Abfragen
