Funktion gesucht: ID-Nr'n der Unterkategorien

  • Hallo alle zusammen,
    seit längerer Zeit schon suche ich, leider bislang vergeblich, eine Funktion, die nur die ID-Nummern aller Unterkategorien der aktuellen (Unter-)Kategorie ermittelt - entweder als Array oder als String.
    Gibt es eine solche?
    Oder muss ich tatsächlich über Umwege die ID-Nummern herausfinden?

    Herzlichen Dank schon einmal im Voraus für eure Hilfe.

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    • 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

  • Mit get_terms() kannst Du dir die Liste geben lassen. Das sind dann allerdings WP_Term-Objekte. In einer Schleife kannst Du die auch zu einem int-array umwandeln.

  • Mit get_terms() kannst Du dir die Liste geben lassen. Das sind dann allerdings WP_Term-Objekte. In einer Schleife kannst Du die auch zu einem int-array umwandeln.


    Herzlichen Dank für die Info.
    Aber:
    Was sind WP_Term_Objekte? Und wie behandelt man diese? Über mehr Infos darüber würde ich mich sehr freuen. :-)

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Siehe: https://developer.wordpress.org/reference/classes/wp_term/

    Mit get_terms() bekommst Du die als Array. Ich weiß ja nicht was du eigentlich erreichen willst, aber dieses Array sollte eigentlich ausreichend sein.


    Mein Ziel ist es, die Beiträge der Unterkategorien nicht anzeigen zu lassen.
    Wenn ich das über den o.g. Umweg mache, klappt das zwar, aber für den besten Weg halte ich dies selbst nicht.
    Und da immer wieder auch andere Leute nach einer solchen Möglichkeit suchen, wollte ich gerne einen möglichst guten Code liefern und nicht einen merkwürdigen Umweg. You know?

    Mit der Funktion get_terms() funktioniert es leider nicht - da haut er mir die Website um die Ohren.
    Mein Code lautete:

    Code
    $array_output=get_terms();

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Zunächst einmal: ich will ja, dass die Beiträge nicht angezeigt werden.

    Hier der Code:

    Code
    function eb_filter_child_cats($query) {
       if (!is_category()) {
           return $query;
       }
      $array_output=eb_child_cats();
      if ( ! $query->is_admin )
        $query->set( 'category__not_in', $array_output );
      return $query;
    }
    add_filter( 'pre_get_posts', 'eb_filter_child_cats' );

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Dann versuchs mal damit:

  • Dann versuchs mal damit:

    Super!
    1000 Dank von mir und wahrscheinlich auch von vielen anderen, die nach soetwas noch suchen werden, denn das funktioniert einwandfrei. :)

    Nachtrag
    Leider muss ich das noch einmal korrigieren, denn das funktioniert nur für die Kategorie, die direkt darüber liegt, aber nicht für die Ober-OberKategorie. Aber vielleicht lässt sich das ja noch korrigieren? Vielleicht hast du oder andere eine Idee wie man dieses Problem lösen kann. Ich würde mich sehr darüber freuen. :)

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    4 Mal editiert, zuletzt von redcat63 (14. Juli 2024 um 15:55)

  • Versuchs damit:

Jetzt mitmachen!

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