Saya tidak bisa mendapatkan ID penulis posting di luar loop untuk membuat get_the_author_meta berfungsi. Sejauh ini saya sudah mencoba berbagai pendekatan:
1.
$author_id=$post->post_author;
2.
global $post;
$author_id=$post->post_author;
3.
$post_tmp = get_post($post_id);
$author_id = $post_tmp->post_author;
4.
$author_id = $posts[0]->post_author;
Saya perlu ID penulis untuk meneruskannya ke:
$address = get_the_author_meta('user_email', $author_id);
Ada saran?
Jawaban:
Cara paling sederhana dan paling mudah untuk mendapatkan ID penulis posting di luar loop, jika Anda tahu ID posting, adalah dengan menggunakan fungsi inti WordPress
get_post_field()
.Jika Anda belum tahu ID kiriman dari halaman yang Anda buka, maka karena WP 3.1 hal yang paling mudah untuk dilakukan adalah menggunakan fungsi
get_queried_object_id()
(mencarinya di daftar Metode) yang berfungsi bahkan di luar loop.Jika ini tidak berhasil untuk Anda maka tolong berikan penjelasan yang lebih rinci tentang di mana Anda mencoba menjalankan kode Anda dan kami dapat melihat apakah kami dapat membantu lebih lanjut.
sumber
Berikut cara mendapatkan dan mendapatkan ID penulis di luar loop WordPress:
Maka dimungkinkan bagi kita
the_author_meta
:sumber
Tergantung di mana Anda berada. Jika Anda berada di halaman tunggal (mis. Hanya menunjukkan satu {{Sisipkan Jenis Tulisan Di Sini}}), Anda dapat menggunakan
get_queried_object
, yang akan mengambil objek posting.Jika Anda berada di tempat lain, Anda dapat menggunakan
$wp_query
objek global , dan memeriksa$posts
propertinya. Ini harus bekerja pada halaman tunggal juga.Anda juga bisa hanya "memulai salah" loop dan memundurkannya untuk mengambil ID penulis. Ini tidak akan menimbulkan klik database tambahan atau sejenisnya. WordPress mengambil semua posting sekaligus (pada saat penulisan).
rewind_posts
hanya me-reset objek posting saat ini (global$post
) ke awal array. Kelemahannya adalah ini dapat menyebabkanloop_start
aksi menembak lebih awal dari yang Anda inginkan - bukan masalah besar, hanya sesuatu yang harus diperhatikan.sumber
Ini sepertinya bekerja di luar loop, mungkin ini akan membantu.
Anda juga dapat secara manual mengatur ID posting dan ambil cara ini:
Ubah ID out untuk mengirim id secara manual untuk keluar dari akses loop.
Bukan solusi hebat, tapi mudah-mudahan ini membantu.
sumber
Saya memiliki masalah yang sama di sini ketika mencoba membuat widget yang menampilkan posting yang ditampilkan dengan informasi penulis.
Saya menggunakan beberapa petunjuk dari ujung ke-2 @chrisguitarguy.
Kode saya terlihat seperti ini:
sumber
Untuk mendapatkan dan mendapatkan ID penulis di luar loop:
Kemudian gunakan
ingat jika Anda mengambil id posting dalam loop dan mengakses sisi penulis keluar maka hanya akan memberikan data id posting terakhir dalam loop
sumber
Semoga ini akan membantu:
sumber
Mengapa Anda tidak menggunakan the_author_meta
Ini dapat digunakan dalam loop
sumber