Ich versuche, alle IDs in meiner Navigation abzurufen und in eine Zeichenfolge zu konvertieren, damit ich wp_query
damit die Seiten abrufen kann, die nur in der Navigation aufgeführt sind. Der Code zum Abrufen der IDs:
$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);
Aber es werden die falschen Zahlen zurückgegeben. Wenn ich zum Administrationsbereich gehe und mit der Maus über die Seiten fahre, stimmt die Nummer, die in der Adressleiste am unteren Bildschirmrand angezeigt wird, nicht überein. Was mache ich falsch?
$numbers[] = $menu_item->ID;
durch die in meiner Antwort.Ich kann Ihnen nicht sagen, wann diese Änderung stattgefunden hat, aber ab WordPress Version 5.2.4 können Sie die Seiten-ID verwenden
object
undobject_id
abrufen. So würde ich das machen:quelle