Ich möchte eine individuelle Sidebar für meine Kategorien anzeigen.
Meine Seitenstruktur ist:
Hauptkategorie 1
- Unterkategorie 1
- Unterkategorie 2
- Unterkategorie 3
Hauptkategorie 2
- Unterkategorie 1
- Unterkategorie 2
- Unterkategorie 3
Nach etwas suchen und experimentieren bin ich auf folgenden abfrage gekommen die ich in meiner sidebar.php habe:
<?php // abfrage ob blogkategorie x oder child von x
if ( is_category() ) {
$cat = get_query_var('cat');
$args = array(
'include' => $cat,
'hide_empty' => 0
);
$categories = get_categories($args);
if ( ($cat == 18) || ($categories[0]->category_parent == 18) ) {
include (TEMPLATEPATH . '/sidebar-blog.php');
}
}
?>
Alles anzeigen
Das Funktioniert auch schon fast fast wie ich es mir vorstelle, die Sidebar wird in der Kategorie und den Child Kategorien dargestellt. Nur in den entsprechenden Artikeln der Kategorie/Child Kategorien nicht.
Wenn ich es richtig verstanden habe, müsste das über die zusätzliche abfrage
is_single() && in_category(18)
auf den Artikel Seiten angezeigt werden. Ich habe es so versucht:
<?php // abfrage ob blogkategorie x oder child von x
if ( is_category() ) {
$cat = get_query_var('cat');
$args = array(
'include' => $cat,
'hide_empty' => 0
);
$categories = get_categories($args);
if ( ($cat == 18) || ($categories[0]->category_parent == 18) || (is_single() && in_category(18) ) ) {
include (TEMPLATEPATH . '/sidebar-blog.php');
}
}
?>
Alles anzeigen
Leider wird die Sidebar in der single Ansicht auf den Artikelseiten nicht angezeigt. Ich hab jetzt ewig gesucht und probiert aber komme nicht auf die Lösung.
Kann mir jemand sagen wo mein Fehler liegt und was ich falsch mache?