Ich bin also auf ein Problem mit der WP-RAM-Nutzung gestoßen und suche nach einer Lösung.
Der einzige Ort, an dem ich dieses Problem wirklich auf meiner Site habe, ist eine Site Map-Seite, die ich zu füllen versuche. Eine Lösung für dieses Problem kann jedoch universell angewendet werden und die RAM-Nutzung auf einer gesamten Site einsparen.
Im Wesentlichen ist diese Site Map-Seite, die ich habe, eine Liste aller posts
und pages
auf meiner Site. Die einzigen Elemente der Variablen $ post, auf die ich auf dieser Seite zugreifen muss, sind der Titel und der Permalink. Leider gibt die von mir verwendete Abfrage alle Beiträge mit allen Informationen in jeder ihrer $ post-Variablen zurück.
Das folgende Beispiel zeigt eine Abfrage, die ich auf dieser Site Map-Seite für ein einzelnes custom-post-type
Produkt mit dem Namen "Produkte" mit einer benutzerdefinierten Taxonomie von "Ergänzungen" und dem Begriff "Alle Ergänzungen" verwende. Meine Site Map-Seite enthält mehrere solcher Abfragen, aber zu Erklärungszwecken füge ich nur den Code für diese einzelne Abfrage hinzu.
$varArray= array(
'post_type' => 'products',
'post_status' => 'publish',
'supplements' => 'all-supplements',
'posts_per_page' => -1,
'orderby' => 'title',
'order' => 'ASC'
);
$myProducts= new WP_Query($varArray);
Die große Mehrheit der Informationen, die in der Variablen $ post gespeichert sind (für meine Site, und ich vermute, dass dieser Trend für die allgemeine Verwendung gesehen wird), befindet sich im "Inhalt". Die typische RAM-Nutzung für meine Site Map-Seite beträgt ~ 140 MB (von Debug Bar gemeldet), während die Verwendung für jede andere typische Seite auf meiner Website 50-60 MB beträgt. Großer Unterschied. Gestern funktionierte die Site Map-Seite nicht mehr (WSOD), und um dies zu beheben, musste ich die maximale RAM-Größe erhöhen, die WP verwenden kann. Daher erhöhe ich die insgesamt erforderlichen Systemressourcen aufgrund einer einzelnen Seite.
So komme ich zu meiner Frage.
Gibt es irgendwo in Wordpress einen Pfad / eine Option, den ich vermisse, der eine normale Abfrage abruft posts
/ pages
mag, aber NICHT den Inhalt für abgerufene Beiträge erhält?
Oder gibt es alternativ eine einfachere Möglichkeit für mich, nur bestimmte Elemente innerhalb einer bestimmten Abfrage (Titel / Permaklink / Slug / etc ...) zu erfassen, anstatt die gesamte $ post-Variable shebang abzurufen?
Es scheint mir, dass für viele WP-Anwendungen der einzige Ort, an dem "der Inhalt" eines Posts / einer Seite normalerweise benötigt wird, auf dieser page
oder dieser post
Seite liegt (offensichtlich gibt es hier Ausnahmen) und dass der Zugriff auf den vollständigen Inhalt für Posts möglich ist / Seiten, die durch Abfrage auf anderen Seiten abgerufen werden, sind einfach übertrieben. Wenn es eine Möglichkeit gibt, das Laden des gesamten Inhalts für Postlistenseiten zu vermeiden, kann eine erhebliche Menge an RAM-Nutzung eingespart werden.
Jede Hilfe wäre dankbar.