Saya bermaksud menjalankan situs multi-penulis, saya tidak ingin posting dari penulis lain ditampilkan di /wp-admin/edit.php
halaman.
Saya berhasil memecahkan masalah ini dengan kode dari utas ini . Kodenya seperti ini:
function posts_for_current_author($query) {
global $pagenow;
if( 'edit.php' != $pagenow || !$query->is_admin )
return $query;
if( !current_user_can( 'manage_options' ) ) {
global $user_ID;
$query->set('author', $user_ID );
}
return $query;
}
add_filter('pre_get_posts', 'posts_for_current_author');
Kode berfungsi dengan baik, menyembunyikan posting dari penulis lain untuk ditampilkan di sini. Tapi saya menemukan masalah lain - menu di atas halaman tidak mengubah jumlah posting terkait oleh penulis, itu menunjukkan jumlah semua posting di situs saya.
Menu yang saya maksud adalah seperti ini:
Mine () | All () | Published () | Draft () | Trash ()
Bagaimana cara mengubah angka dalam ()
untuk mencerminkan nomor yang hanya terkait dengan penulis?
admin
query-posts
dev-jim
sumber
sumber
Jawaban:
Inilah yang saya gunakan:
Sumber
sumber
elseif
sana? (2) Dan mengapa menggunakan terjemahan__()
secara keseluruhanhref
lebih padaAll
misalnya?Solusi lebih pendek berdasarkan jawaban https://wordpress.stackexchange.com/a/49200/83038 .
CATATAN: Tersedia sejak WordPress 3.7.0.
sumber
Jalan terbaik
SEMUA JAWABAN INI MEMILIKI MASALAH KEAMANAN.
Cara terbaik adalah menambahkan kemampuan kustom dan mengelola pos dll dengan kemampuan.
Cara yang mudah
Solusi Artem tampaknya lebih baik karena WP tidak merujuk jumlah posting hanya pada layar post edit tetapi juga dalam widget Dashboard, respons Ajax dll.
Untuk solusi yang lebih baik berdasarkan Artem's.
mengapa:
wp_count_posts
sebelumnya mengembalikan jumlah cache yang dihitung ketika hasilnya telah di-cache sebelumnya.mengapa: cache meningkatkan kinerja.
$perm
parameter ke-3wp_count_posts
hook.mengapa: jumlah posting harus mencakup posting pribadi pengguna sendiri berdasarkan
readable
perm.mengapa: filter mungkin ditimpa oleh filter lain.
mengapa: posting sticky menghitung termasuk posting lain dan mereka dihitung secara terpisah oleh
WP_Posts_List_Table
.mengapa:
read_others_posts
kemampuan dapat dimodifikasi.Anda mungkin ingin menambahkan tweak
post_author
kueri var keWP_Comment_Query
.wp_count_comments
kait.Berikut ini adalah versi yang dimodifikasi berdasarkan
wp_post_counts()
WP 4.8.Masalah yang Diketahui: Posting tempel yang bukan milik pengguna dihitung.diperbaiki dengan menghapus tampilan posting yang lengket.sumber