Wie man Seiten metabox bildet, zeigen alle Hierarchie im Menü admin an?

Running WP 3.9.1

Ich habe viele Seiten und Unterseiten.

Wenn ich ein Menü erstelle, werden viele Unterseiten nicht auf der richtigen Ebene angezeigt, aber einige tun dies?

So wird das Seitenmetabox angezeigt

Auf den Seiten Metabox sollte etwas mehr angezeigt werden


BEARBEITEN

Nummer im screenshot sind ein bisschen geschraubt sorry darüber.

Das Problem ist, dass nach den ersten paar alle Seiten auf dem gleichen Niveau angezeigt werden, aber sie sollten nicht.

Es sollte so aussehen

  • Seite 1
    • Unterseite A der Seite 1
    • Unterseite B von Seite 1
      • Unterseite 1 von Unterseite B
      • Unterseite 2 von Unterseite B
      • Unterseite 3 von Unterseite B
  • Seite 2
    • Subseite A von Seite 2
      • Unterseite 1 von Unterseite A
      • Unterseite 2 von Unterseite A
    • Unterseite B von Seite 2
      • Unterseite 1 von Unterseite B
      • Unterseite 2 von Unterseite B


Irgendeine Idee, was dieses verursacht oder wie man es repariert, also kann ich mein Menü handhaben?

Solutions Collecting From Web of "Wie man Seiten metabox bildet, zeigen alle Hierarchie im Menü admin an?"

Eine Lösung gefunden.

Die Paginierung scheint die Anzeige der Pages-Hierarchie in der Metabox zu unterbrechen.

Hier ist der Fix zum Deaktivieren der Seitennummerierung in der Metabox des Navigationsmenüs

https://core.trac.wordpress.org/attachment/ticket/18282/18282-disable-nav-menu-pagination.patch

Vielen Dank

Die vorherigen Antworten schlagen vor, core-WordPress-Dateien zu bearbeiten, was nie eine gute Idee ist, da neue Versionen von WordPress die Änderungen (unter anderem) überschreiben werden.

Während das Original- Trac-Ticket # 18282 seit Juli 2011 geöffnet ist, gibt es das Problem noch immer in WordPress 4.6 – seit über 5 Jahren.

Glücklicherweise gibt es eine “sichere” Möglichkeit, einen Workaround zu implementieren, um das Verhalten zu ändern, ohne WordPress Core zu hacken.

Sergey Biryukov, ein core-Committer, schrieb ein kleines Feature-Plugin, das das Pages-Metabox-Verhalten ändert und die Hierarchie sowohl für Post-Typen als auch für Taxonomien erhält:

Seiten- und Taxonomiehierarchie auf dem Bildschirm “Menüs bearbeiten” beibehalten

Das Plugin wirkt sich nur auf die Registerkarte “Alle anzeigen” aus, nicht auf “Zuletzt verwendet” oder “Am häufigsten verwendet”, ist jedoch eine viel wartungsfreundlichere und verantwortungsvollere Lösung als das Patchen des cores oder das direkte Hacken der Dateien.

Dies ist meine Implementierung der oben genannten Lösung, die für WordPress 4.6.1 aktualisiert wurde

Bearbeiten Sie in der Datei wp-admin / nav-menu.php die function wp_nav_menu_item_post_type_meta_box und fügen Sie dem Array das Argument ‘nopaging’ hinzu, beginnend bei Zeile 319 wie folgt:

$args = array( 'offset' => $offset, 'order' => 'ASC', 'orderby' => 'title', 'posts_per_page' => $per_page, 'post_type' => $post_type_name, 'suppress_filters' => true, 'update_post_term_cache' => false, 'update_post_meta_cache' => false, 'nopaging' => true // add this argument ); 

Dadurch wird die Seitennummerierung in der Metabox deaktiviert und die Seitenhierarchie sollte korrekt angezeigt werden, auch wenn Sie eine lange Liste von Seiten haben.

Hoffe es hilft jemandem!

Hier ist ein Fix, den Sie in der functions.php Ihres eigenen Themes anwenden functions.php :

 add_filter( 'nav_menu_meta_box_object', 'disable_pagination_in_menu_meta_box', 9 ); function disable_pagination_in_menu_meta_box($obj) { $obj->_default_query = array( 'posts_per_page' => -1 ); return $obj; } 

Update: _wp_nav_menu_meta_box_object mit Priorität 9 hinzugefügt werden, um mit dem Standardfilter _wp_nav_menu_meta_box_object