Setelah membaca di tempat lain tentang tumpukan dua plugin WP yang memaksa posisi menu yang sama (dengan kemungkinan satu maka tidak muncul), saya bertanya-tanya bagaimana saya bisa mengontrol posisi item menu yang ditambahkan oleh plugin.
Saya sudah menggunakan fungsi yang tampaknya menangani item submenu seperti itu di 'pengaturan', dan fungsi lain untuk menyusun ulang item default (posting, halaman, tema, plugin, pengaturan, dan sebagainya) item 'tingkat atas' - tetapi yang tidak mengubah posisi dari barang-barang tersebut ditambahkan oleh plugin.
function custom_menu_order() {
return array(
//Add items here in desired order.
);
}
add_filter( 'custom_menu_order', '__return_true' );
add_filter( 'menu_order', 'custom_menu_order' );
Sebagai contoh, dari dua item menu tingkat atas yang ditambahkan oleh WooCommerce, satu muncul di atas item yang ditambahkan oleh ContactForm7 dan yang lainnya di bawah ini, dan akan menyenangkan untuk menyusun ulang item tersebut - dan juga, untuk dapat menyusun ulang item dengan lebih baik yang tidak memaksa posisi menu dan malah muncul di bagian bawah.
Saya menemukan ini biasanya berfungsi dengan baik untuk memesan kembali default dan item 'edit.php? Post_type = ...', tetapi item-item dengan 'admin.php? Halaman = ...' tidak memesan ulang.
Ketika fungsi pemesanan ulang saya dinonaktifkan, dua item WooCommerce ('edit.php? Post_type = product', dan 'edit.php? Post_type = shop_order') dikelompokkan bersama sebagaimana dimaksud, tetapi ketika fungsi diaktifkan kembali mereka terpecah oleh ContactForm7 ('admin.php? halaman = wpcf7').
Dan, satu ('edit.php? Post_type = shop_order') dari CPT WooCommerce tidak akan dipesan ulang - meskipun yang lain ('edit.php? Post_type = produk') tidak.
Jawaban yang ada baik-baik saja, tetapi jika Anda ingin menambahkan jenis posting kustom baru, Anda harus mengedit kembali fungsi-fungsi itu lagi dan lagi.
Untuk memperbaikinya, saya mengembangkan fungsi kecil ini. Cukup tentukan fungsi
$new_positions
di dalam Andamy_new_menu_order
:sumber
ketika Anda membuat jenis posting dengan register_post_type () Anda dapat mengatur posisi menu:
Jika item memiliki posisi menu yang sama, mereka diurutkan berdasarkan abjad.
di plugin Anda sendiri, Anda dapat mengatur level. jika Anda mencoba mengubah posisi menu dari plugin yang belum Anda buat, banyak dari mereka mungkin memiliki pluguggable, atau Anda dapat mengedit panggilan mereka.
sumber