the_tags wird nicht angezeigt innerhalb wp_query

  • Hallo,

    ich habe ein Problem. Ich habe in meinem Blog einen Loop:

    PHP
    <?php $my_query = new WP_Query('cat=-2,-4&showposts=3'); ?>
    <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
            <div class="posttitle"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></div>
            <p><?php the_tags(); ?></p>
    <?php endwhile; ?>

    Wenn ich das auf meiner Startseite implementiere, werden die Tags nicht angezeigt.

    Wenn ich jedoch einen Default-Loop verwende:

    PHP
    <?php while(have_posts()) : the_post() ?>
            <div class="posttitle"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></div>
            <p><?php the_tags(); ?></p>
        <?php endwhile; ?>

    werden die Tags angezeigt! Warum ist das so? Was mache ich falsch?

    Ich verwende WP_Query damit ich jedesmal neue Parameter an einen Loop übergeben kann. Insbesondere auf der Startseite weil es dort mehrere Loops gibt. Gibt es eine Alternative hierzu? Ich habe auch gesehen das es post_query gibt. Was ist der Unterschied zu WP_Query?

    Gruß
    Yavuz

    • 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

  • Also eigentlich sollte das schon so funktionieren. Auf die Schnelle hab ich dazu auch keinen Bug-Report gefunden. Welche WP-Version?

    Nachtrag: Aber das hier hab ich gefunden:
    WordPress › Support » How can I get wp_title() to display both tag names when a multi-tag query ran?

    Mal noch die Codex-Seite zu WP_Query:
    Function Reference/WP Query « WordPress Codex

    (Was meinst du mit post_query? query_posts() ? Das wäre ja dasselbe, nur ohne neues Loop-Objekt)

  • Scheint mir zwar ein Bug zu sein, habe aber die Lösung nach langer Suche gefunden:

    Wenn man hinter WP_Query

    PHP
    <?php /* temporary */ $wp_query->in_the_loop = true; ?>

    einträgt, dann funktioniert es. Scheint so zu sein, dass die WP_Query nicht als Loop erkannt wird. Denn die the_tags() funktion erwartet einen Loop.

    gruß
    Yavuz

Jetzt mitmachen!

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