Ich versuche, Informationen in meiner Datenbank abzurufen. Ich wollte alle pages
mit dieser Anweisung anzeigen , aber ich bekomme ein LeerzeichenARRAY
global $wpdb;
$result = $wpdb->get_results (
"
SELECT *
FROM $wpdb->wp_posts
WHERE post_type = 'page'
"
);
echo $result; // display data
Ausgabe:
ARRAY
BEARBEITEN : Nachdem ich die folgenden Vorschläge geändert habe, verwende ich diese jetzt. aber ich bekomme immer noch keine Ergebnisse:
global $wpdb;
$posts = $wpdb->wp_posts;
$result = $wpdb->get_results( " SELECT * FROM $posts WHERE 'post_type' = 'page' " );
foreach ($result as $page) {
echo $page->ID.'<br/>';
}
$wpdb->wp_posts
mit geschweiften Klammern zu wickeln , dh.{$wpdb->wp_posts}
..Antworten:
quelle
echo $result
nur versucht sicherzustellen, dassquery
ich Daten von dem, was ich bekomme, abrufe, ist DruckArray
. Wenn ich benutze,echo $page->ID
bekomme ich nichts.$tablename = $wpdb->prefix.'posts';
dieser Teil, der nicht in der Codex-Dokumentation enthalten war. Kannst du mir erklären, warum es funktioniert?Sie haben ein leichtes Missverständnis:
Beim Aufruf erhalten
$wpdb
Sie eine Liste von Eigenschaften, die die Kernnamen der Tabellen enthalten:So Ihre letzte Abfrage aussehen würde wie folgt aus :
quelle
$wpdb->prefix
sollte das nicht für eingebaute Tabellen verwendet werden. Rufen Sie sie einfach direkt an. Behoben, dass dies auch seine Antwort ist.Versuchen Sie den folgenden Code. Ich habe mich dem ähnlichen Problem gestellt und es gelöst, indem ich $ wpdb aus dem Feld 'FROM' entfernt habe.
quelle
Mit "leeres Array" meinen Sie ein "leeres Array" oder die Ausgabe "ARRAY". Wenn es das letztere ist, ist es die erwartete Ausgabe. Sie müssen dieses Array durchlaufen und die Ergebnisse entsprechend anzeigen.
Referenz: http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results
quelle