Estoy tratando de obtener todos los ID en mi navegación y convertirlos en una cadena para poder usarlos wp_query
para obtener las páginas que solo se enumeran en la navegación. El código para obtener las 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);
Pero está devolviendo los números equivocados. Cuando voy al área de administración y paso el mouse sobre las páginas, el número que aparece en la barra de direcciones en la parte inferior de la pantalla no coincide. ¿Qué estoy haciendo mal?
$numbers[] = $menu_item->ID;
con la de mi respuesta.No podría decirte cuándo ocurrió este cambio, pero a partir de la versión 5.2.4 de WordPress puedes usar
object
yobject_id
recuperar la ID de la página. Así es como haría esto:fuente