Saya mencoba untuk mendapatkan semua ID di navigasi saya dan mengonversinya menjadi string sehingga saya dapat menggunakannya dengan wp_query
untuk mendapatkan halaman yang hanya terdaftar di nav. Kode untuk mendapatkan ID:
$menu_name = 'primary';
if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] )) {
$menu = wp_get_nav_menu_object( $locations[ $menu_name ] );
$menu_items = wp_get_nav_menu_items($menu->term_id);
}
foreach ( $menu_items as $menu_item ) {
$numbers[] = $menu_item->ID;
}
$number = implode(',',$numbers);
Tetapi mengembalikan nomor yang salah. Ketika saya pergi ke area admin dan mengarahkan mouse saya ke atas halaman, angka yang muncul di bilah alamat di bagian bawah layar tidak cocok. Apa yang saya lakukan salah?
$numbers[] = $menu_item->ID;
dengan yang ada di jawaban saya.Saya tidak akan bisa memberi tahu Anda ketika perubahan ini terjadi tetapi pada WordPress versi 5.2.4 Anda dapat menggunakan
object
danobject_id
untuk mengambil ID halaman. Begini cara saya melakukan ini:sumber