ICONS für Kategorieauflistung anzeigen

  • Ich habe folgendes Problem bzw. kleine Schwierigkeit:

    Auf der Hauptseite habe ich eine Ausgabe von den letzten Artikeln bestimmter Kategorien. Nun würde ich gerne zusätzlich zu dem "Titel" "Teasertext" "Weiterlesen" und "Thumbnail" gerne die Kategorien anzeigen lassen zu denen der jeweilige Artikel gehört... allerdings als ICON bzw. kleine Grafik. EINE BESTIMMTE Kategorie soll dort allerdings nicht angezeigt werden...

    Da ich nicht gerade ein Programmiergott bin, kann ich auch schwerlich selbst auf eine Lösung komme, könnte mir aber vorstellen wie es gehen könnte...

    Meine Idee bzw. Lösungsvorschlag:
    Es gibt doch diese selbstdefinierbaren Felder, weiss zwar net wirklich wie das funktionieren soll, aber so wie ich es mir vorstelle, könnte man doch einfach irgendwie img-tags mit der jeweiligen Grafik verbinden, und dann bei der Einpflege eines Artikels einfach in das Custom-Feld ein paar Zahlen eintragen, je nach dem welche Kategorie-Bildchen man anzeigen will. zB "2, 4, 5, 6".

    Wie könnte ich dies umsetzen?

    Am besten wäre natürlich wenn ich das nicht machen müsste und wordpress die Bildchen automatisch anzeigen würde... so nach dem Prinzip, "wenn kategorien 1 2 3 oder 4 gewählt wurden, zeige die Kategorie-Icons 1 2 3 und 4 an". ...aber dann eben nur für die 4 Kategorien, weil Kategorie 5 eben nicht angezeigt werden soll! (auch wenn es WP-technisch natürlich auch in Kategorie 5 vertreten ist)

    Wie könnte ich die Optimallösung bekommen?

    Beispiel: Musiknews - WP Kategorien: "Musiknews, Rock, Pop, Punk, Electro" - Angezeigte Icons "Rock, Pop, Punk, Electro" (also OHNE eines Icons für die Kategorie "Musiknews") :)

    Wäre wirklich toll wenn mir jemand helfen würde... hab das Gefühl das es "irgendwie so gehen könnte". Ich nutze WP 3.0 mit einem von mir müheselig umgebauten TwentyTen-Theme.

    • 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

  • Danke für den Hinweis, aber leider vorbeigeschossen :)

    Das hilft nicht weiter weil
    1) Plugin (hab schon 16 drauf, mehr müssen net sein)
    2) veraltetes Plugin
    3) Eine Kategorie soll nicht angezeigt werden wie gesagt...

    Siehe mein "Musik" Beispiel...

  • Zitat von OtaQ

    Ach kommt schon, muss doch jemanden geben der hier ne Lösung parat hat

    Das nenn ich mal ungeduldig! :lol:

    Also, wenn ich das richtig verstanden habe... Hier mal ein völlig ungetestetes Beispiel, was natürlich noch angepasst werden muss. Noch hilfreicher wäre etwas mehr Code deinerseits.

    PHP
    <?php 
        $pfad = get_bloginfo('template_directory');
        
        if( is_category('Rock') ) {
        echo ('<img src="'.$pfad.'/bilder/Rock.jpg" alt="Kategorie Rock" width="30" height ="30" />');
        }
        elseif( is_category('Pop') ) {
        echo ('<img src="'.$pfad.'/bilder/Pop.jpg" alt="Kategorie Pop" width="30" height ="30" />');
        }
    ?>

    u.s.w.
    Infos auch dazu im Codex;
    http://codex.wordpress.org/Function_Reference/is_category
    http://codex.wordpress.org/Conditional_Tags

    Thomas

  • Hey das ist supernett! Danke schon mal, werde es gleich mal ausprobieren und bescheidsagen ob es geklappt hat bzw. Codeschnipsel posten falls es hapert! Danke schon mal vielmals! :D

    Das nenn ich mal ungeduldig! :lol:

    Also, wenn ich das richtig verstanden habe... Hier mal ein völlig ungetestetes Beispiel, was natürlich noch angepasst werden muss. Noch hilfreicher wäre etwas mehr Code deinerseits.

    PHP
    <?php 
        $pfad = get_bloginfo('template_directory');
        
        if( is_category('Rock') ) {
        echo ('<img src="'.$pfad.'/bilder/Rock.jpg" alt="Kategorie Rock" width="30" height ="30" />');
        }
        elseif( is_category('Pop') ) {
        echo ('<img src="'.$pfad.'/bilder/Pop.jpg" alt="Kategorie Pop" width="30" height ="30" />');
        }
    ?>

    u.s.w.
    Infos auch dazu im Codex;
    http://codex.wordpress.org/Function_Reference/is_category
    http://codex.wordpress.org/Conditional_Tags

    Thomas

  • Nee sorry, dein Code bewirkt einfach gar nix... :(
    Hier der komplette Code meiner loop-index.php

    Er zeigt folglich alle Artikel der Kategorie "News" (die Kategorie die nicht mit als Icon angezeigt werden soll)

    Nun sollen eben max. 8 Icons angezeigt werden... je nach dem welche Kategorie ausgewählt ist... (Außer "News" ^^)

    Jemand eine Idee? :(

  • Ich habe es einmal im Mittelpart IN der Schleife ausprobiert und dann am Ende... beide Male ohne Effekt - Keine Fehlermeldung, rein gar nix :) Kein Effekt

    [LEFT] [COLOR=#000000]
    [/COLOR]

    [COLOR=#000000]
    [/COLOR] [/LEFT]

  • Oh Super, werde es gleich ausprobieren!
    Sorry, hab die Links mit einer Signatur verwechselt :) ...zu ungenau gelesen :(

    is_category(X) prüft, ob die Kategorienseite X angezeigt wird. Um die Kategorien, zu denen ein Beitrag gehört, abzufragen, muss man get_the_category() verwenden.

    EDIT:
    Ok, habs ausprobiert, allerdings wahrscheinlich falsch... HTML + CSS geht klar, aber meine PHP-Skills tendieren gen 0 :( Könnte mir bitte jemand den richtigen Code posten, das hier ist wohl falsch eingesetzt:

    PHP
    <?php 
        $pfad = get_bloginfo('template_directory');
        
        if( get_the_category('10') ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif alt="Kategorie Rock" width="30" height ="30" />');
        }
        elseif( get_the_category('17') ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif" alt="Kategorie Pop" width="30" height ="30" />');
        }
    ?>

    Einmal editiert, zuletzt von OtaQ (2. September 2010 um 09:43)

  • Mahlzeit,
    also ich hatte vorhin meinen Codeschnipsel lokal probiert, und es hat prima funktioniert... :?

    Der Ordner im Theme-Ordner und die Bilder sind vorhanden?
    Die Kategorie-ID´s richtig?

  • Mahlzeit,
    also ich hatte vorhin meinen Codeschnipsel lokal probiert, und es hat prima funktioniert... :?

    Der Ordner im Theme-Ordner und die Bilder sind vorhanden?
    Die Kategorie-ID´s richtig?

    Wie lautet Dein Code nun genau? Die Ordner und Bilder sind richtig... :(

  • Ungetestet:

    PHP
    <?php 
    foreach((get_the_category()) as $category) { 
        if ( $category->cat_ID=10 ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif alt="Kategorie Rock" width="30" height ="30" />');
        }
        elseif( $category->cat_ID=17 ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif" alt="Kategorie Pop" width="30" height ="30" />');
        } // usw.
    }
    ?>
  • Ungetestet:

    PHP
    <?php 
    foreach((get_the_category()) as $category) { 
        if ( $category->cat_ID=10 ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif alt="Kategorie Rock" width="30" height ="30" />');
        }
        elseif( $category->cat_ID=17 ) {
        echo ('<img src="'.$pfad.'/images/lupe.gif" alt="Kategorie Pop" width="30" height ="30" />');
        } // usw.
    }
    ?>

    Cool, vielen Dank Spickzettel! Das ist noch nicht ganz richtig, aber nah dran: Er zeigt mir jetzt pro News jeweils für eine zugehörige Kategorie, ein Bildchen and und das mehrfach! (immer "Kategorie Rock")

    Also falls eine News in 3 Kategorien wäre "Musiknews, Rock, Pop" zeigt er nun als Bildchen an "Rock Rock Rock" - richtig wäre "Rock, Pop"

    Die Kategorie mit der ID "5" wird aber immer mit angezeigt, also "Musiknews". Achso, und na ja, der Bildlink ist bisl falsch, deswegen sehe ich immer das "alt"... hab ja keine Ahnung, aber muss $pfad nicht irgendwo vorher definiert werden !?

  • Das war Pseudocode :-) Statt = (Zuweisungsoperator, if (x=y) ist immer wahr) muss das doppelte Gleichheitszeichen == stehen. Und ja, $pfad muss natürlich irgendwo definiert werden. Und die Namen der Bilder für die Kategorien müssen natürlich auch angepasst werden.

    PHP
    if ( $category->cat_ID==10 ) { 
    ...
    elseif( $category->cat_ID==17 ) {

Jetzt mitmachen!

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