Sidebar für bestimmte Kategorie abfragen

  • Es geht um folgende Webseite: http://www.boule-tsvg-05.tsv-groetzingen05.de/2011/03/31/osterei-boule/

    Aufgabe:
    Ich möchte in der single.php abfragen, ob es sich um Beiträge der Kategorie "Termine" = ID 4 handelt.

    Dazu habe ich in der single.php nach "get_header" folgende Abfrage eingebaut:

    PHP
    <?php if ( is_category('4') ) {
       get_sidebar('l_sidebar-tsv-termine.php');
    }
    else {
       get_sidebar('l_sidebar-archiv.php');
    }
    ?>

    Problem:
    Diese Abfrage funktioniert nicht. Es wird weder "l_sidebar-tsv-termine.php" noch "l_sidebar-archiv.php" angezeigt, sondern "sidebar.php"

    So wie auf dieser Seite sollte die sidebar aussehen:
    http://www.boule-tsvg-05.tsv-groetzingen05.de/termine/


    Frage:
    Was muss ich tun? Stimmt die Syntax? Ist die Position richtig?

    Hier der vollständige code zu single.php:

    • 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

  • Die Syntax dürfte nicht stimmen:[INDENT] The get_sidebar() tag includes the file sidebar.php or sidebar-{name}.php from your current theme's directory. If that file is not found, it will instead include wp-includes/theme-compat/sidebar.php.
    [/INDENT]D.h.: mit [COLOR=#000000][COLOR=#0000bb]get_sidebar[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]'l_sidebar-tsv-termine.php'[/COLOR][COLOR=#007700]); [FONT=Verdana][COLOR=Black]sucht Wordpress nach der Datei [/COLOR][/FONT][/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]sidebar-l_sidebar-tsv-termine.php.php[/COLOR][COLOR=#007700]

    [FONT=Verdana][COLOR=Black]Lege also zwei Sidebar-Dateien an mit Namen [/COLOR][/FONT][/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]sidebar-l_tsv-termine.php[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700][FONT=Verdana][COLOR=Black] und [/COLOR][/FONT][/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]sidebar-l[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]_[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]archiv.php[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700][FONT=Verdana][COLOR=Black], dann nutze als if-Statement:

    [/COLOR][/FONT][/COLOR][/COLOR][LEFT]

    PHP
    [COLOR=#000000][COLOR=#0000bb]<?php [/COLOR][COLOR=#007700]if ( [/COLOR][COLOR=#0000bb]is_category[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]'4'[/COLOR][COLOR=#007700]) ) {
         [/COLOR][COLOR=#0000bb]get_sidebar[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]'l[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]_[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]tsv-termine'[/COLOR][COLOR=#007700]);
    }
    else {
         [/COLOR][COLOR=#0000bb]get_sidebar[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]'l[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]_[/COLOR][/COLOR][COLOR=#000000][COLOR=#dd0000]archiv'[/COLOR][COLOR=#007700]);
    }
    [/COLOR][COLOR=#0000bb]?>[/COLOR][/COLOR]

    [/LEFT]

    [COLOR=#000000][COLOR=#007700][FONT=Verdana][COLOR=Black]Kuckst Du auch hier: http://codex.wordpress.org/Function_Reference/get_sidebar[/COLOR][/FONT]

    [/COLOR][/COLOR]

    http://www.ewerkzeug.info/ - Tipps zu Wordpress, Suchmaschinen, Newsletter und mehr.

    Einmal editiert, zuletzt von hedu (5. April 2011 um 21:22)

  • 1. ist if_category() in der single.php falsch. Dort musst du nach in_category() fragen.
    2. würde ich mit include arbeiten:

    PHP
    <?php include (TEMPLATEPATH . '/sidebar-l_tsv-termine.php'); ?>

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Wie schließt man eigentlich ein Thema?

    Gar nicht, wir schließen hier nix. Könnt ja jemand noch mal das selbe Problem haben.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

Jetzt mitmachen!

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