wp_list_page von children => bei manchen Seiten werden ALLE seiten gelistet

  • Hallo zusammen

    Ich rufe in meiner sidebar.php das Submenü (bzw. die Childpages) via...

    ...auf. Das funktioniert soweit aus alles. Allerdings ist es so, dass wenn ich einen Suchbegriff eingebe und es kommt zu keinem Treffer dann werden mir in der Sidebar ALLE Pages gelistet. Wenn es zu mindestens einem Treffer kommt werden KEINE Pages gelistet. Dazu den Inhalt meiner search.php:

    Mir ist leider der Zusammenhang in diesem Fall nicht ganz klar. Es wird ja in beiden Fällen mit der search.php gearbeitet nur mit dem Unterschied, dass wenn es nur einen reinen Text als Ausgabe gibt, WP alle Seiten (nur Seiten, keine Kategorien und sonstiges) auflistet. Woran liegt das? Bzw. wie kann ich das unterbinden, da in diesem Falle mein ganzez Layout zerrissen wird?

    Ich wäre über Hilfe sehr dankbar!!!

    Grüsse
    Pixselig

    PS:

    Auch bei der direkten Eingabe eines falschen Page-Links in die Adresszeile kommt es zu obigem Phänomen. Hierzu noch meine 404.php:

    PHP
    <?php get_header(); ?>
     
       <div id="main">
          <h2>404 - Seite nicht gefunden</h2>
          <p>Tut uns leid, aber die Seite nach der Sie gesucht hast, wurde leider nicht gefunden. Schreiben Sie uns bitte eine <a href="mailto:*******@***.**?subject=<?php echo get_bloginfo('name'); ?> - 404 Seite nicht gefunden">eMail</a>, dann helfen wir Ihnen gerne weiter.</p>
       </div>
     
    <?php get_sidebar(); ?>
     
    <?php get_footer(); ?>

    Auch hier wird nur blanker Text verwendet und alle Pages werden gelistet. Kann mir aber irgendwie nicht vorstellen, dass das alles mit dem "blanken Text" zu tun hat. Denke vieleher, dass WP in dies zwei Fällen Alle von mir erstellten Seiten als Childs einordnet. Doch warum? Und warum nicht, wenn es zu Suchtreffern kommt? Vielleicht weil dann zu anderen Seiten verlinkt wird und sich daher die Seitenstruktur verändert?

    PPS: die Seite ist derzeit noch lokal da ich oft ohne Inet arbeite, leider ;(

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich habe dass Problem leider noch immer nicht gelöst.

    Ich weiss aber, dass bei dem Menüaufruf mittels "wp_nav_menu" , wenn in diesem entsprechenden Menü Keine Seiten und Co. verlinkt sind, WP automatisch alle Seiten anzeigt. Dies lässt sich jedoch mittels " 'fallback_cb' => false " verhinedern. Diese Möglichkeit, bietet "wp_list_pages" jedoch nicht. Hängt es vielleicht damit zusammen? Oder doch eher mit der Seiten-Hierarchie-Struktur von WP zusammen? Oder liegt es an etwas ganz anderem?

    Ich wäre wirklich dankbar, wenn mir eines der php-kundigeren Forumsmitglieder, einen Gedankenanstoss geben könnte! Bei Bedarf poste ich gerne auch noch andere Teile des Codes.

    Grüsse
    Pixselig

  • so einfach wäre es gewesen:

    habe nun body_class eingebaut -> damit bekommen "keine suchtreffer" und "404" eigene klassen, "search-no-results" und "error404". und mithilfe dieser klassen lässt sich dann auf selbigen seiten das submenu einfach ausblenden.

    ist nicht wirklich elegant -> aber mir genügt das im moment ;)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!