Wie bekomme ich Zugang zu jedem Menüpunkt in WordPress?

Ich habe einige Menüpunkte in einem Menü am Standort “Hauptmenü”. Mit wp_nav_menu( array( 'theme_location' => 'main-menu' ) ); , ich bekomme alle 13 Artikel in einem div.

Jetzt muss ich nur 10 Menüpunkte im gegenwärtigen div und die remanining im anderen div anzeigen (sag id = “neu”) gerade neben ihm. Wenn das div mit der ID “new” 10 Menüelemente enthält, wird erneut ein neues div erstellt und die restlichen Elemente werden darin angezeigt.

Gibt es eine Möglichkeit, auf das Array zuzugreifen, das diese Menüelemente enthält? Bitte helfen Sie.

Solutions Collecting From Web of "Wie bekomme ich Zugang zu jedem Menüpunkt in WordPress?"

Neben einem benutzerdefinierten walker können Sie auch einen Filter verwenden, z. B. wp_nav_menu_args oder wp_nav_menu_objects wie im Codex beschrieben

Ich glaube, Sie können die Walker_Nav_Menu-class erweitern, um sie für Ihre Vorschläge zu verwenden. In diesem Beispiel ist ein custom_menu_walker- Element wichtig , das Ihre benutzerdefinierte Walker-class ist.

 wp_nav_menu( array( 'container' =>false, 'menu_class' => 'nav', 'echo' => true, 'before' => '', 'after' => '', 'link_before' => '', 'link_after' => '', 'depth' => 0, 'walker' => new custom_menu_walker()) ); 

custom_menu_walker

 class custom_menu_walker extends Walker_Nav_Menu { function start_el(&$output, $item, $depth, $args) { global $wp_query; $indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; $class_names = $value = ''; $classes = empty( $item->classes ) ? array() : (array) $item->classes; $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item ) ); $class_names = ' class="'. esc_attr( $class_names ) . '"'; $output .= $indent . ' 

Dies ist kein Code für Ihre Frage, nur ein kleines Beispiel. Sie können mehr über benutzerdefinierte walker bei codex und hier auf wpse ( 1 , 2 ) lesen