wake-up-neo.net

Wie bekomme ich IDs für Objekte im Menüzweig?

Ist es möglich, den Inhalt aller Menüpunkte zu drucken, wenn ein Menü angezeigt wird (oder ein Menüzweig wie in Frage zu Anzeigen von Menüzweigen )?

enter image description here

Sobald ich auf About Us geklickt habe, möchte ich, dass auf einer neuen Seite der Inhalt aller untergeordneten Links angezeigt wird.

Im Grunde suche ich nach einer Möglichkeit, IDs dieser Posts/Seiten zu erhalten und sie in meiner WP -Anfrage zu verwenden.

6
daniel.tosaba

Ich bin faul, unterstützende Logik von Grund auf neu zu schreiben, also verwende ich Funktionen von verknüpften Antworten auf Zweigen wieder:

/**
 * Retrieve IDs of posts in branch of menu.
 *
 * @param mixed  $menu
 * @param string $branch_title
 *
 * @link http://wordpress.stackexchange.com/questions/2802/display-a-portion-branch-of-the-menu-tree-using-wp-nav-menu
 *
 * @return array
 */
function get_post_ids_from_menu_branch( $menu, $branch_title ) {

    $menu_object = wp_get_nav_menu_object( $menu );
    $menu_items  = wp_get_nav_menu_items( $menu_object->term_id );
    $items       = submenu_limit( $menu_items, (object) array( 'submenu' => $branch_title ) );
    $items       = wp_list_filter( $items, array( 'object' => 'post' ) );
    $ids         = wp_list_pluck( $items, 'object_id' );

    return $ids;
}

// example
var_dump( get_post_ids_from_menu_branch( 'Test menu', 'Level 1' ) );
4
Rarst