it-swarm.com.de

Nur Links der obersten Ebene in der Site-Navigation anzeigen

Dies scheint einfach zu sein, aber ich konnte keine Lösung finden oder ausarbeiten.

Ich verwende das Starkers-Theme und Wordpress 3.0.4 und meine Site generiert die Navigation automatisch wie gewohnt. Ich möchte jedoch, dass die Navigation zu nur die Seiten der obersten Ebene anzeigt, d. H. Keine Links zu Seiten, die Kinder anderer Seiten sind.

Dies ist der Code, den ich derzeit verwende.

<?php wp_nav_menu( array( 'container' => 'nav', 'fallback_cb' => 'starkers_menu',
'theme_location' => 'primary' ) ); ?>

Ich möchte die untergeordneten Links programmgesteuert ausblenden, bin jedoch bereit, CSS zu verwenden, wenn stattdessen jemand beraten kann, wie den untergeordneten Links bestimmte Klassen zugewiesen werden.

Vielen Dank im Voraus für jede Hilfe.

** edit 2 **

Ich habe die aktuelle Funktion mit dem Namen starkers_menu (unten) aufgespürt. Das Hinzufügen von Tiefe oder sogar das Entfernen der anderen Ausschlüsse und die reine Verwendung von Tiefe funktionieren jedoch auch nicht:

function starkers_menu() {
    echo '<nav><ul>';
    wp_list_pages('depth=1&exclude=4,19&title_li=');
    echo '</ul></nav>';
}
1
ajcw

Haben Sie das Argument depth ausprobiert (siehe Dokumentation wp_nav_menu() )?

Verstehe ich auch richtig, dass Sie das Menü nicht manuell einrichten und das Thema mit benutzerdefiniertem Rückruf generieren lassen, den Sie in Ihrem Code haben?

Update

Gleiche Antwort - versuchen Sie das Argument depth, nur diesmal in wp_list_pages() call in starkers_menu() function. Es sollte funktionieren, es sei denn, diese Funktion wird niemals ausgeführt und ist zum Zeitpunkt der Ausführung des Menüs nicht verfügbar.

Verwenden Sie die neueste Version des Themas? Wenn Sie keine Aktualisierung in Betracht ziehen.

1
Rarst