Ich möchte meinem Primärmenü ein benutzerdefiniertes Menü hinzufügen. Ich habe dafür den folgenden Code verwendet.
add_filter( 'wp_nav_menu_items', 'search_menu_item', 10, 2 );
function search_menu_item ( $items, $args ) {
if ($args->theme_location == 'secondary-menu') {
$items .= '<li class="border-none">SEARCH<form><input type="text" name="s" placeholder="Search Here" class="search-box"></form>';
}
return $items;
}
und das Menü erscheint als letztes Menü, aber ich möchte mein Menü an der 3. Position hinzufügen. Wie mache ich das
Kann jemand helfen??
Vielen Dank
Verwenden Sie lieber die wp_nav_menu_objects filter stattdessen, wodurch Sie ein Array von Elementen anstelle einer Zeichenfolge ändern können.
Beispiel:
add_filter( 'wp_nav_menu_objects', 'restructure_menu_links', 10, 2 );
function restructure_menu_links( $items, $args ) {
$new_links = array();
$label="Lorem Ipsum"; // add your custom menu item content here
// Create a nav_menu_item object
$item = array(
'title' => $label,
'menu_item_parent' => 0,
'ID' => 'yourItemID',
'db_id' => '',
'url' => $link,
'classes' => array( 'menu-item' )
);
$new_links[] = (object) $item; // Add the new menu item to our array
// insert item
$location = 3; // insert at 3rd place
array_splice( $items, $location, 0, $new_links );
return $items;
}