Kategorie Intro

klickt ein User auf eine Kategorie, so werden automatisch alle Beiträge dieser Kategorie aufgelistet.
Praktisch, aber was passiert dann?
Sinnvoll ist hierbei eine kurzes Intro über die Kategorie mit weiteren Infos.
hier meine Angaben:

Zielsetzung:

  1. Anzeige der gewählten Kategorie
  2. Anzeige der verfügbaren Artikel innerhalb der Kategorie
  3. Anzeige der Kategorie Beschreibung
  4. Anzeige der weiteren Kategorien

Anzeige der gewählten Kategorie

In der archive.php lässt sich die Kategorie ganz einfach mit <?php the_category(', ') ?> anzeigen, aber sollten evtl. Beiträge meheren Kategorien zugeordnet sein ist das Ergebnis für den User unklar.

In meinem Fall schreibe ich über eine Musikerin. (Artist) und im Beitrag über ein Album (Alben) und ein Plattenlabel (Label).
Beim Aufruf der Kategorie erscheint folgendes Intro:
list categories

Es soll aber nur die anklickte Kategorie anzeigt werden!
Hierzu muss ich einen anderen Code verwenden:
<h3>Kategorie: <strong><?php single_cat_title(); ?></strong></h3>
durch diesen Code wird nur die gewählte (angeklickte) Kategorie angezeigt.
single_cat_title
hier bereits mit etwas styling. Zeile als Überschrift (h3) und angeklickte Kategorie fett (strong)

Artikel-Anzahl innerhalb der Kategorie

wie in obigen Bild zu sehen, lässt sich die Anzahl der einer Kategorie zugehörigen Beiträge direkt ausgeben.
Hierzu bedarf es nur eines Code Schnipsels:
<?php echo $wp_query->found_posts; ?> Beitr&auml;ge)

Kategorie Beschreibung

Zu den Kategorien lässt sich in WordPress ein kurzer Infotext erstellen (Description). Hierzu im WP Dashboard unter Beiträge/Kategorien die Kategorien bearbeiten und einen Infotext schreiben.
Soll dieser angezeigt werden:
<?php if ( category_description() ) : // Optionaler Kategorie Text ?>
<div class="archive-meta"><?php echo category_description(); ?></div>
<?php endif; ?>

Kategorie Intro

Alle Kategorien anzeigen

Der User hat bereits eine Kategorie angeklickt, eventuell interessiert er sich auch für weitere Kategorien. (siehe obiges Bild)
Anzeige aller verfügbaren Kategorien mit folgender Code Angabe:
Alle Kategorien: <ul class="categories"><?php wp_list_categories('hierarchical=0&title_li='); ?></ul>

Die Angabe hierarchical=0 ist nur erforderlich, falls man Unterkategorien verwendet.

Styling
Damit die Kategorien alle brav neben einander stehen, bedarf einiger styling Angaben, je nach Geschmack, meine Angaben:
.categories {
margin: 0; padding: 0;
float: right;
font-size: 0.8em;
}
.categories li {
list-style: none;
float: left;
padding: 0px 5px; margin: 0;
border-right: 1px solid #ddd;
}
.categories li:last-child {
border-right: none;
}
.archive-meta {
color: #999;
font-style: italic;
}

kompletter Code für die archive.php:
<?php /* If this is a category archive */ if (is_category()) { ?>
<div class="infocomments"><h3>Kategorie: <strong><?php single_cat_title(); ?></strong> (<?php echo $wp_query->found_posts; ?> Beitr&auml;ge)</h3>
<?php if ( category_description() ) : // Show an optional category description ?>
<div class="archive-meta"><?php echo category_description(); ?></div>
<?php endif; ?>
<small>Alle Kategorien:</small> <ul class="categories"><?php wp_list_categories('hierarchical=0&title_li='); ?></ul>
<div style="clear:both;"></div>
</div>

umgesetzt hier: house-of-chicago.de

Besonderheiten

evtl. sollen bestimmte Inhalte nur auf ausgewählten Seiten erscheinen…

Kategorie Intro nur auf Seite 1

will man die Intro Box nur auf der Seite 1 anzeigen – also auf der Seite die beim anklicken einer Kategorie erscheint – so muss eine Abfrage eingebaut werden.
<?php if ( $paged < 2 ) : ?>
Code Kategorie Intro Box
<?php endif; ?><!-- Ende Abfrage ob Seite 1 -->

Intro Angaben nur bei bestimmten Kategorien

<?php if ( in_category('8') ): ?>
Code speziell für die Kategorie mit der ID=8
<?php endif; ?>

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.