Artikel von Unterkategorien in Hauptkategorien ausblenden

  • Hallo liebe Wordpress Gemeinde,
    ich habe 3 Probleme die ich trotz googln und Forensuche quälen nicht lösen kann. Den ein oder anderen Ansatz dazu habe ich im Netz gefunden aber scheinbar funktionieren die nicht unter der aktuellen WP Version.

    Problem 1

    Ich habe eine Hauptkategorie und dazu mehrere Unterkategorien.

    Beispiel:
    Fußball = Hauptkategorie
    Fußball Ergebnisse = Unterkategorie
    Fußball Spielplan = Unterkategorie

    Tennis = Hauptkategorie
    Tennis Ergebnisse = Unterkategorie
    Tennis Berichte = Unterkategorie

    Ich möchte das in der normalen Ansicht - Startseite, Suchseite oder Monatsarchiv nur die Hauptkategorien agezeigt werden. Dazu nutze ich die Funktion:

    PHP
    wp_list_categories('title_li=&depth=1')

    Soweit so gut. Nun möchte ich aber dass wenn ich die Hauptkategorie Fußball aufrufe die beiden Unterkategorien mit angezeigt werden. Allerdings nur die Unterkategorien von Fußball und nicht die von Tennis. Wie kann man das machen dazu finde ich einfach nichts. Mit Pages hab ich das schon realisiert und zwar so, für diejenigen die es interessiert:

    Das ergibt eine Überschrift der Hauptseite und die jeweiligen Unterseiten als Aufzählungsliste.

    Problem 2
    Wenn ich die Hauptkategorie aufrufe, zum Beispiel Tennis, werden alle Artikel gelistet auch die aus den Unterkategorien. Es sollen allerdings gar keine angezeigt werden weil es in der Hauptkategorie keine Artikel geben soll sondern einen festen Beitrag als Kategorie Beschreibung. Mit der Funktion category_description() geht das allerdings nicht weil auch Bilder in der Beschreibung enthalten sein sollen. Was im Grunde genommen mein 3. Problem ist.
    Folgenden Code habe ich gefunden, in mein functions.php gepackt und ohne Erfolg ausprobiert:

    Damit wollte ich erreichen das zumindest die Artikel nur in einer Kategorie angezeigt werden. Scheinbar funktioniert der Snippet nicht unter der aktuellen WP Version.
    Ich würde mich riesig freuen wenn Ihr mir bei der Lösung helfen könntet.
    Liebe Grüße Peter

    • 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

  • Hallo Peter,

    zu Problem 1:

    Der Befehl get_query_var('cat') gibt Dir die ID der ausgewählten Kategorie zurück. Diese kannst Du für wp_list_categories verwenden. Der Parameter dafür ist child_of.

    Ich komme jetzt leider nicht mehr dazu, mir den Rest anzusehen, aber ich hoffe, dass Du damit schon mal weiterkommst.

    Auch Peter

  • Hallo Peter,
    Salzburg eine sehr schöne Stadt. War ich vor zwei Jahren gewesen.

    Danke erstmal für die schnelle Antwort. Werde morgen früh gleich damit experimentieren.

    Grüße Peter

  • Hallo,
    leider konnte mich der Tipp nicht meiner Lösung näherbringen. Ich habe mit get_query_var('cat') im Zusammenhang mit wp_list_categories einiges angestellt. Nur leider eben ohne entsprechenden Erfolg.

    Zum besseren Verständniss vielleicht mal eine Seite wo es genau so ist wie ich es haben will, dabei handelt es sich allerdings nicht um WP, ich gehe aber davon aus dass es auch mit WP zu bewerkstelligen geht. Hier mal die Seite:

    http://www.bsv-norden.de/

    Es geht dabei um die Navigation unter Sparten. Wenn man zum Beispiel Fußball klickt öffnet sich die Seite und das dazu passende Untermenu für Fußball.

    Es muß keine fertiger Code sein. Aber einfach mal ein paar Tipps zur Herangehensweise.
    Und dann ist ja immer noch dass Problem dass die Artikel der Unterkategorien auch in den Hauptkategorien gelistet werden.

    Gruß Peter

  • Sorry, ich hab momentan keine Zeit, um hier im Forum aktiv zu sein.

    Ein schneller Denkansatz:

    Die Top Level Kategorien mit get_categories( array( 'parent' => 0) ) in ein Array augeben.

    Die Unter-Kategorien der gewählten Kategorie mit get_categories( array( 'child_of' => get_query_var('cat') ) ) ebenfalls in ein Array ausgeben.

    Von beiden Array benötigst Du jeweils nur die cat_ID. Die IDs aus beiden Array packst Du in einen String und übergibts diesen als Parameter include der Funktion wp_list_categories().

    Nur mal ein Schuss ins Blaue. Sollte aber so gehen.

    Peter

Jetzt mitmachen!

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