Apakah ada cara untuk mendapatkan konten dari yang lain di luar loop? ID-nya 302 dan saya perlu menampilkan konten itu di halaman lain.
loop
post-content
rampok
sumber
sumber
get_queried_object_id()
! developer.wordpress.org/reference/classes/wp_query/…Jawaban:
Anda dapat menggunakan
get_page()
untuk mengembalikan$post
objek halaman statis:Edit
Demikian pula, Anda dapat menggunakan
get_post()
untuk mengembalikan$post
objek posting:sumber
setup_postdata( $post );
dulu, setelah itu, Anda bisa menggunakanthe_content();
apply_filters( 'the_content', $post_object->post_content );
untuk mendapatkan konten dari pos di luar loop Anda dapat menulis sesuatu seperti ini
sumber
Jika konten Anda menyertakan kode pendek, Anda harus menggunakan:
sumber
do_shortcode
selain mengatakan, "Ini mungkin lambat" dan "Anda bisa menggunakan fungsi yang dipanggil oleh kode pendek." Alasan-alasan itu hanya berlaku untuk skenario yang paling sepele untuk skenario paling sederhana. Gagal saat kode pendek dibuat di tempat lain, atau jika ada beberapa kode pendek, atau kode pendek dicampur dengan konten dan markup lainnya. Tanpa alasan kuat, saya tidak setuju dengan pernyataan itu untuk dihindarido_shortcode
. Baunya seperti optimasi prematur .Untuk kelengkapan, membangun komentar Tim di atas dan terinspirasi oleh artikel Stephen Harris , solusi yang memungkinkan penggunaan
the_content()
adalah:Dan karenanya filter diterapkan (paragraf akan dimasukkan dll.) Dan shortcode bekerja.
sumber
Karena Anda tahu ID posting target Anda (302), Anda mungkin menemukan sintaks singkatan yang berguna ini yang dapat Anda gunakan di luar loop (meskipun kinerjanya hampir sama dengan metode alternatif lainnya :)
sumber
Anda dapat menggunakan
get_post_data()
fungsi ini untuk mendapatkan posting di luar loop. Tempatkan kode ini di functions.phplalu tambahkan potongan ini untuk kontrol lebih besar pada proses
sumber
Anda dapat menggunakan, seperti yang dikatakan, solusi dengan
get_post
dan$post_object->post_content
, tetapi jangan lupa untuk menambahkan tanda centang sebelum Anda menggunakan objek posting itu:sumber
Anda cukup memanggil get_the_content (postId)
sumber
menggunakannya
wp_reset_postdata();
akan bekerja .. (diedit)posttype dapat berupa "posting", "halaman" atau jenis posting khusus Anda. Di sini p = 302 adalah id posting Anda .. Semoga ini akan berhasil.
sumber
query_posts
kecuali Anda perlu merusak fungsi halaman. Selalu gunakanWP_Query
atauget_posts
untuk permintaan khusus :-)pre_get_posts
filternya, danthe_post
. Sangat detail.Anda dapat menempatkan konten dalam kategori X dan menggunakan query_post sebelumnya sambil seperti ini:
sumber