Kategorieliste als Zeile darstellen

  • Hallo zusammen,
    vielleicht kann mir ja jemand helfen. Ich möchte das Kategorie-widget in einer Zeile darstellen, die einzelnen Kategorien sollten also nebeneinander und nicht untereinander gelistet werden. Vielen Dank im Voraus
    Grüße Klaus

    • 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

  • https://gesundheitsorientierte-kosmetik.org
    Es geht aber nicht um die Startseite, sondern um die Darstellung der Unterkategorien auf den Kategorie Seiten. Diese werden per PHP-Code dargestellt:
    <?php
    $cat = get_query_var('cat');
    $cat_list = wp_list_categories('child_of='.$cat.'&hide_empty=0&title_li=&echo=0');
    if($cat_list) {
    echo 'Unterkategorien: <ul>';
    echo $cat_list;
    echo '</ul>';
    }
    ?>
    Ich würde das lieber in einer Zeile oben unterbringen.
    Vielen Dank Klaus

  • Wäre lösbar über eine eigene CSS-Klasse für die Liste und entspr. Regeln oder auch über die Parameter des Funktionsaufrufs, z.B. so:

    PHP
    ?php wp_footer(); ?>
    <?php
    $cat = get_query_var('cat');
    $seperator = ', ';
    $cat_list = wp_list_categories('child_of='.$cat.'&hide_empty=0&echo=0&style=custom&separator='.$seperator);
    if($cat_list) {
        echo 'Unterkategorien: ';
        echo rtrim(trim($cat_list), $seperator);
    }
    ?>
  • Wenn du get_taxonomies nutzt, kannst du dir die Ausgabe nach Wunsch aufbereiten.

    Wordpress weil es spass macht, besonders beim WordPress Meetup in Linz

    Einmal editiert, zuletzt von Shadow (13. September 2023 um 08:11)

  • Mit get_taxonomies werde ich erst a weng experimentieren müssen, ist mir wie so vieles bei wordpress nicht geläufig.
    Der Code von b3317133 bricht leider auch nach dem seperator um, so dass jede Unterkategorie n einer eigenen Zeile steht.

  • Nutze den Code exakt dort, wo Du den alten Code genutzt hast. Dein Website ändert derzeit die Ausgabe und fügt anderweitig [FONT=Courier New]<br />[/FONT] ein.

    Alternativ beschreibe genau, wo/wie Du den Code eingibst, ggf. mit Screenshot.

    Einmal editiert, zuletzt von b3317133 (13. September 2023 um 11:53)

  • Beispiel für einfacher Shortcode:

    Code
    function cats_shortcode($atts)
    {
      $catsout="";
     $terms = get_terms( 'category' ); //oder andere Taxonomy angeben
        foreach ( $terms as $term ) {
            $catsout.= $term->name . ' '; // mit HTML usw gestalten
        }
          return "<h2>Hallo in der Wordpress Welt:</h2>".$catsout."<br/>";
    }
    add_shortcode('cats', 'cats_shortcode');

    Wordpress weil es spass macht, besonders beim WordPress Meetup in Linz

  • Ich möchte Ihn unterhalb der Kategorieangabe (Archivtyp:Name) als als Shortcode mit WPCode eingeben.


    Auf einer einfachen Seite oder Beitrag bzw. mit klassischen Themes egal wo auf der Seite funktioniert der Code wie erwartet bzw. gewünscht.

    Nur auf dem Archiv Seiten Template bearbeitet über den "tollen" Gutenberg Editor fügt WordPress offenbar ungefragt und ungewollt diese [FONT=Courier New]<br />[/FONT] bei der Ausgabe ein, wenn man den Code wie von Dir beschrieben mit WPCode als Shortcode einfügt.

    Sehe ich als Bug in WordPress.

    Übrigens werden bei Deinem Website auch unerwünschte [FONT=Courier New]<p>[/FONT] Tags in ein JavaScript mit [FONT=Courier New]skipLinkTarget[/FONT] usw. eingefügt.

    Vermutlich sind beides Auswirkungen des über 4 Monate alten und nach wie vor offenen WordPress Bug Tickets #58366, das mit WordPress 6.2.2 entstanden ist.

    Als Workaroud kannst Du den Kategorieangabe Code um eine Zeile ergänzen, um die problematischen Zeichen auszufiltern, die den o.g. Bug triggern:

    PHP
    <?php
    $cat = get_query_var('cat');
    $seperator = ', ';
    $cat_list = wp_list_categories('child_of='.$cat.'&hide_empty=0&echo=0&style=custom&separator='.$seperator);
    if($cat_list) {
        echo 'Unterkategorien: ';
        $cat_list = str_replace(array("\t", "\r", "\n"), '', $cat_list); // Filter wg. WordPress Bug #58366
        echo rtrim(trim($cat_list), $seperator);
    }
    ?>

    9 Mal editiert, zuletzt von b3317133 (13. September 2023 um 14:20)

Jetzt mitmachen!

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