Saya telah menyiapkan CPT untuk bertindak dengan cara yang sama seperti posting tetapi digunakan untuk memposting detail acara.
Masalahnya adalah bahwa beberapa posting di masa depan dan memiliki tanggal di masa depan yang ditetapkan pada mereka. Masalahnya adalah bahwa pengguna normal tidak dapat melihat posting ini.
Begitu:
- Bagaimana cara saya mengubah archive-events.php ke daftar posting selanjutnya juga? Menampilkan posting yang jauh di masa depan adalah yang pertama dan yang terlama, bertahan dengan pagination.
- Bagaimana saya membuatnya sehingga ketika pengguna mengklik posting di masa depan mereka tidak mendapatkan halaman 404 tidak ditemukan karena posting belum dipublikasikan secara teknis?
Jawaban:
Saya sudah bisa menyelesaikan ini sendiri. Seluruh kode saya untuk mendaftarkan CPT:
Jadi, agar posting dapat dilihat oleh semua pengguna, bahkan jika diatur di masa mendatang, Anda harus melakukan hal berikut:
Kami menghapus tindakan yang berhubungan dengan memposting di lain waktu dan menerapkan tindakan kami sendiri untuk memaksanya agar dipublikasikan meskipun memiliki masa depan dengan:
Maka yang perlu kita lakukan sekarang hanyalah menampilkan posting di halaman arsip dengan memfilter
posts_where
:sumber
__()
panggilan Anda atau jangan gunakan fungsi.Brady, saya tidak bisa cukup berterima kasih karena telah mengarahkan saya ke solusi ini. Klien saya telah menetapkan semua tanggal acara tanpa bidang khusus, dan saya tidak akan kembali dan mengubah segalanya. Awalnya kode Anda membuat kesalahan ketika mencoba memposting, tetapi ia bekerja dengan sedikit modifikasi berikut (dibuat agar sesuai dengan format yang digunakan dalam wp-include / post.php):
dan
Saya menghabiskan beberapa waktu untuk mencari tahu hal ini. Semoga ini bisa membantu orang lain!
sumber
Tanpa mengubah status posting Anda dapat menampilkan posting masa depan tunggal dan arsip dengan pre_get_posts juga:
sumber