Saya mencoba mengambil informasi pada basis data saya. Saya ingin menampilkan semua pages
menggunakan pernyataan ini, tapi saya kosongARRAY
global $wpdb;
$result = $wpdb->get_results (
"
SELECT *
FROM $wpdb->wp_posts
WHERE post_type = 'page'
"
);
echo $result; // display data
Keluaran:
ARRAY
EDIT : Setelah mengubah saran di bawah, saya sekarang menggunakan ini. tapi saya masih belum mendapatkan hasil apa pun:
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
dengan kurung kurawal, mis.{$wpdb->wp_posts}
..Jawaban:
sumber
echo $result
hanya untuk memastikan bahwa saya mengambil data dariquery
apa yang saya dapatkan adalah cetakArray
. ketika saya menggunakanecho $page->ID
saya tidak mendapatkan apa-apa. Saya benar-benar tidak yakin mengapa ..$tablename = $wpdb->prefix.'posts';
ini bukan bagian dari dokumentasi codex. dapatkah Anda menjelaskan kepada saya mengapa itu berhasil?Anda memiliki sedikit kesalahpahaman:
Saat menelepon
$wpdb
, Anda mendapatkan daftar properti yang berisi nama inti tabel:Jadi permintaan akhir Anda akan terlihat seperti ini:
sumber
$wpdb->prefix
seharusnya tidak digunakan untuk tabel bawaan. Panggil saja mereka secara langsung. Memperbaiki ini juga jawabannya.Coba kode berikut. Saya menghadapi masalah yang sama dan menyelesaikannya dengan menghapus $ wpdb dari bidang 'FROM'.
sumber
Dengan "blank Array" maksud Anda sebuah 'array kosong' atau merupakan output 'ARRAY'. Jika itu yang terakhir maka, itu adalah output yang diharapkan. Anda perlu mengulang-ulang array itu dan menampilkan hasilnya.
Referensi: http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results
sumber