wake-up-neo.com

Abrufen des Kategorienamens aus der benutzerdefinierten Schleife und einmaliges Echo

Ich habe eine Titelseite des Magazins, die mit jeder Ausgabe aktualisiert wird, und die Titelseite zeigt die aktuellen Heftbeiträge, die geklebt sind. In diesem Monat befinden sich beispielsweise alle Posts in einer Kategorie mit dem Titel "Ausgabe 01". Im nächsten Monat werde ich "Ausgabe 02" erstellen, die die "Ausgabe 01" -Sticky-Posts auf der Titelseite ersetzt.

Ich versuche, den Kategorienamen der Beiträge anzuzeigen, die in der Abfrage abgerufen wurden, kann dies jedoch außerhalb der Schleife nicht tun (ich möchte ihn nur einmal oben anzeigen, bevor die Schleife beginnt).

Hier ist meine Frage, um die Haftnotizen aufzurufen und einen Versuch, den Kategorienamen anzuzeigen, der für mich nicht funktioniert ...

<?php // Get Current Issue Articles
    $currentissueposts = array(
        'posts_per_page'      => 6,
        'post__in'            => get_option( 'sticky_posts' ),
        'ignore_sticky_posts' => 1
        );

        $currentissue = new WP_Query( $currentissueposts ); 

        if ( $currentissue->have_posts() ) : ?>
            <div class="the-header">
                <h3><?php the_category(); ?></h3>
            </div><!-- #the-header -->  
        <?php while( $currentissue->have_posts() ) : $currentissue->the_post(); ?>
                <a href="<?php the_permalink() ?>" rel="bookmark">
                <ol class="current-index-container">
                    <li class="the-title"><?php the_title(); ?></li>
                    <li class="the-author"><?php the_field('sub_head_1'); ?></li>
                    <li class="the-subtitle"><?php the_field('sub_head_2'); ?></li>
                </ol></a>
        <?php endwhile; 
        wp_reset_query();
        endif; ?>

Ich habe docu in Bezug auf single_post_title und get_the_category durchgesehen, aber es scheint nicht möglich zu sein, dass es nur einmal funktioniert. Jede Hilfe wird sehr geschätzt!

1
antonanton

Hier ist eine Idee. Beachten Sie, dass dies nur funktioniert, wenn sich alle Beiträge in der gewünschten Kategorie befinden und wenn alle Beiträge nur eine Kategorie haben

Die Beiträge werden in einem Array zurückgegeben, über das Sie zugreifen können

$currentissue->posts 

In diesem Sinne können Sie die erste Beitrags-ID wie folgt abrufen

$currentissue->posts[0]->ID

Jetzt können Sie das zu einer Variablen hinzufügen

$id = $currentissue->posts[0]->ID    

Sie können jetzt mit get_the_category die Kategorie abrufen, zu der dieser Beitrag gehört. Denken Sie daran, dass dies die Kategorie ist, zu der alle Beiträge gemäß Ihrer Frage gehören

So etwas würde nur außerhalb Ihrer Schleife funktionieren, nur innerhalb Ihrer Anweisung if

$category = get_the_category( $id ); 
echo $category[0]->cat_name;
2
Pieter Goosen
    <?php print get_the_category(get_the_ID())[0]->name; ?>

get_the_category () - ruft eine Reihe von Beiträgen mit Informationen zu Kategorien ab`. get_the_category (get_the_ID ()) - Ruft ein Array mit Informationen zur Kategorie nur für einen bestimmten Beitrag ab. get_the_category (get_the_ID ()) [0] - Liefert das erste Ergebnis des Arrays, das ein Objekt ist

0
user3703490