Saya mendapat kode berikut, yang membersihkan banyak hal yang tidak akan digunakan dalam area admin:
add_action( 'admin_menu', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
remove_menu_page( 'edit.php' ); //Posts
remove_menu_page( 'upload.php' ); //Media
remove_menu_page( 'edit-comments.php' ); //Comments
remove_menu_page( 'themes.php' ); //Appearance
remove_menu_page( 'users.php' ); //Users
remove_menu_page( 'tools.php' ); //Tools
remove_menu_page( 'options-general.php' ); //Settings
};
Namun, ada dua item menu yang telah dimasukkan dari plugin.
Ketika saya mengarahkan kursor ke setiap item menu, dikatakan tautannya adalah:
/wp-admin/edit.php?post_type=acf
/wp-admin/admin.php?page=wpcf7
Apakah ada cara untuk menyembunyikan halaman menu ini juga?
Jawaban:
Anda perlu menggunakan kait yang tepat (yang tidak selalu sama dengan URL / siput), dan tidak ada salahnya menggunakan kait yang berjalan kemudian (misalnya,
admin_init
):Anda dapat menggunakan yang berikut ini untuk men-debug:
Ini memberi (untuk pengaturan saya) berikut ini untuk halaman menu plugin Contact Form 7:
Array elemen dengan kunci
2
adalah apa yang Anda cari:wpcf7
.sumber
remove_menu_page()
adalah bantuan besar - ajari saya cara memancing, bukan hanya menyerahkan saya ikan!ANDA DAPAT MENGANDUNG SEMUA INI DENGAN BERIKUT UNTUK MENDAPATKAN SEMUA INFO YANG ANDA BUTUHKAN:
Kunci akan memberi Anda nilai array yang memungkinkan Anda melakukan semua ini dengan global wordpress (meskipun tidak disarankan)
Dan untuk menghapus untuk pengguna tertentu lakukan hal yang sama kecuali dengan kemampuan yang ditambahkan:
DAN UNTUK MENGATAKANNYA SEMUA BERSAMA MENGAPA TIDAK MENYINGKIRKAN KODE KAMI? ANDA BISA MENGGUNAKAN ARRAYS UNTUK MENGHINDARI MENULIS remove_submenu_page 50 kali. Ini juga berfungsi dengan node bilah alat:
sumber
Anda mungkin perlu mengatur prioritas add_action ke angka yang lebih tinggi dan menargetkan dua tautan baru secara khusus seperti:
Bidang Kustom Tingkat Lanjut juga menyediakan dokumen bantuan tentang cara melakukan ini untuk menu mereka di sini:
http://www.advancedcustomfields.com/resources/how-to/how-to-hide-acf-menu-from-clients/
Formulir Kontak 7 juga memiliki caranya sendiri untuk membatasi visibilitas menu:
http://contactform7.com/restricting-access-to-the-administration-panel/
sumber
remove_menu_page( 'wpcf7' );
Memperbarui
saya membuat cuplikan kode dengan fungsi yang lebih kuat yang berhubungan dengan menu utama dan sub-menu.
Jawaban asli
Alih-alih menentukan menu yang ingin Anda hapus, tentukan menu yang ingin Anda simpan :)
Dengan cara ini Anda tidak perlu mencari nama plugin dan memodifikasi kode ketika Anda menambahkan plugin baru ..
sumber
Anda perlu menemukan $ menu_slug yang tepat. Kode berikut ini berfungsi untuk saya:
sumber
Tentu saja Anda dapat menentukan hanya item yang ingin Anda hapus. Lihat kode di bawah ini:
Ini hanya negatif dari metode numediaweb. Terima kasih @numediaweb. Ini bekerja dengan baik.
PS: 'menu_item_1 / n' -> arahkan mouse ke item menu dan ambil halaman yang tepat dari item menu yang ditampilkan di tautan.
sumber
gunakan potongan kode ini
sumber