Zugriff auf Kategorie; the_class() geht nicht ?!

  • Ich nutze Wordpress in der Version 2.8.6. .

    {Link gelöscht}

    Zum besseren Durchblick meinerseits habe ich die Divs unterschiedlich eingefärbt.

    Zur Erklärung:
    Ich versuche eine Automatisierung zu erstellen, die mir Konzertdaten sowohl in der Kategorie "Konzerte" (zu finden im Menü unter "Live->aktuelle Konzerte") als auch in der Sidebar anzeigt.

    Dazu versehe ich den jeweiligen Post während des Erstellens zunächst mit folgenden Metadaten

    datum
    ort
    location
    uhrzeit

    Diese lassen sich dann problemlos mit get_post_meta($id,$key,$single) auslesen. Für die eigentliche Konzertdaten-Seite habe ich also eine category-3.php erstellt, die ich nun innerhalb des Loops mit den Metadaten füttere. Klappt auch wunderbar.

    Problem:
    Wie schaffe ich das selbe in der Sidebar. Ich hatte mir überlegt, dass ich in der Sidebar.php ebenfalls die Loop einfüge und dann über the_category() die Kategorie des jeweiligen Posts auslese. Mit einer if-Abfrage kann ich dann bestimmen, ob aus diesem Post die Metadaten genommen werden sollen (Wenn's ein Konzerteintrag ist) oder nicht (wenn's ein normaler Newseintrag ist).
    Aber aus irgendeinem Grund bekomme ich keinen Zugriff auf the_category(), obwohl ja in der oben verlinkten Dokumentation steht, dass man innerhalb der Loop Zugriff auf the_category hat.

    Edit:
    mit
    the_category(', ')
    klappts. Hatte den Inhalt der Klammer nicht beachtet.

    Bleibt noch folgendes Problem

    Die Loopschleife in der Sidebar scheint nurBeiträge durchzugehen, die gerade im Hauptfenster angezeigt sind. Wenn ich also unter News bin, erhalte ich mit the_category(', ') in der Sidebar alle Einträge, unter "Band" erhalte ich in der Sidebar allerdings nur einen Beitrag.

    Ich bräuchte aber an jeder Stelle der Seite in der Sidebar immer die Konzerte mit Metadaten.
    Liegt das daran, dass die Loop-Schleife im Hauptfenster zuerst aufgerufen war?

    Wie schaffe ich es, dass die Loop in der Sidebar alle Posts "untersucht" und nicht nur die aktuell im Hauptfenster angezeigten?

    Weiß gerade echt nicht mehr weiter. Ich wäre euch sehr dankbar, wenn ihr mir helfen könntet.


    Hier die sidebar.php. Auf der Seite im Netz habe ich zur Zeit das

    echo post_class();

    drin.


    Einmal editiert, zuletzt von Slow_AJ_tide (10. März 2011 um 22:08)

    • 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

  • So ganz verstanden habe ich es noch nicht, aber ich vermute der Loop in der Sidebar untersucht nur jene Posts im Hauptfenster, weil der Loop so eingestellt ist. Du kannst in den Optionen ja einstellen, dass pro Seite nur xx Artikel angezeigt werden, also verarbeitet der Loop auch nur so viele.

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Danke, Alphawolf, für deine Mühe.
    Bei mir hat's jetzt hiermit funktioniert:

    PHP
    <?php $anfrage = new WP_Query('category_name=service-nachrichten'); ?> 
    <?php while ($anfrage->have_posts()) : $anfrage->the_post(); ?> 
      Ausgabe
    <?php endwhile; ?>

    Die Anregung habe ich von Grille aus diesem Thread.

    Damit wären hier alle Probleme gelöst.
    Super Forum btw! Ohne euch hätte ich sicher schon das ein oder andere mal aufgegeben.

Jetzt mitmachen!

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