eine Frage die ich schon mehrfach bekommen habe betrifft die Infoboxen, die man sieht so bald man eine Kategorie-Übersicht aufruft. wenn man die Kategorie Amazon-Kindle aufruft bekommt man folgendes zu sehen:
Ich habe das folgendermaßen umgesetzt. Um eine bessere Übersicht zu bekommen habe ich zuerst eine neue Template-Datei mit dem Namen category.php erstellt. So bald WordPress eine Datei mit solchem Namen erkennt, wird er sie bei den Kategorie-Archiven einsetzen.
Ich persönlich finde im konkreten Fall eine neue Template-Datei übersichtlicher als mit Conditional-Tags – if(is_category()) {...}
– zu arbeiten und dadurch die index.php oder die archive.php zu überladen.
Die category.php habe ich im großen und ganzen wie die index.php gelassen. Lediglich am Anfang habe ich folgenden Code eingefügt:
<h2>Die Kategorie "<?php single_cat_title(''); ?>"</h2>
<div class="kategorie-info">
<p>Hier sind alle Beiträge aufgelistet, die in die Kategorie <strong><?php single_cat_title(''); ?></strong> einsortiert wurden. Die Beschreibung dieser Kategorie lautet:</p>
<?php echo category_description($cat); ?>
<p>Du hast die Möglichkeit den <a href="<?php echo get_category_link($cat);?>feed/" class="fett">RSS-Feed</a> speziell nur für diese Kategorie zu abonnieren.</p>
</div>
Mit single_cat_title('');
wird der Titel der aktuellen Kategorie ausgegeben. Im übrigen gibt diese Funktion auch den Titel eines Schlagwortes (Tag) aus. Mit echo category_description($cat);
in der vierten Zeile, wird die Beschreibung der aktuellen Kategorie ausgegeben.
Wie man aus der ersten und der folgenden Abbildung sieht, kann man in die Kategoriebeschreibung auch Links einfügen:
In der vorletzten Zeile sieht man echo get_category_link($cat);?>feed/
. Damit bekomme ich den Pfad zum Newsfeed der aktuellen Kategorie geliefert. Wie ich vor etwas mehr als zwei Wochen schrieb, könnte es sein, dass sich der Leser nur für bestimmte Themen interessiert.
Im Grunde genommen ist das relativ wenig Arbeit im Code, so das auch unerfahrenere Nutzer auf diese Lösung zurückgreifen können.
Wir arbeiten seit 20 Jahren mit WordPress und bieten diverse Dienstleistungen rund um das System an. Kontaktiere uns für weitere Informationen oder für ein Angebot.
Hallo Vladimir,
meine archive.php ist aktuell etwas über 300KB groß, da diese mit unzähligen Conditional-Tags a la if(is_category()) und if (is_tag()) vollgepackt ist.
Wie genau kann ich die archive.php jetzt schlanker machen?
Einfach die if(is_category()) Anweisungen ausschneiden und in eine category.php hineinkopieren?
Vielen Dank für deine Antwort.
Gruß Lucien
[…] jeder einzelnen Kategorie eingerichtet worden. Vielen Dank an Vladimir von Perun.net für diesen Artikel , das CSS-Styling folgt […]
Sehr schöner Tipp. Hab’s gleich für mich umgesetzt.
Danke und Gruß
Olli
Hi Vladimir,
nur der Vollständigkeit halber. Bei der Ausgabe des RSS-Feed fehlt in deinem Beispiel ein Slash vor [Feed/”]. Ansonsten eine einfache und gute Lösung. Danke!
Gruß Dennis
@Dennis,
also wenn du
echo get_category_link($cat);?>feed/
meinst, dann ist das richtig so.Hey Vladimir, ja meinte ich. Aber das liegt dann wahrscheinlich an meinen Permalinks-Einstellungen. Da fehlt nämlich das Slash und der Feed wird so nicht korrekt aufgerufen. 🙂