我有一个杂志的首页,每期都会更新,而首页显示的是当前一期的贴子,这些贴子都是粘滞的。例如,本月所有帖子都在标题为“第01期”的类别中,下个月,我将创建“第02期”,它将取代头版上的“第01期”粘性帖子。
我试图显示在查询中拉出的帖子的类别名称,但似乎无法在循环之外执行此操作(我只想在循环开始之前在顶部显示一次)。
这里是我的查询,以调用粘性帖子,并试图显示对我不起作用的类别名称…
<?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; ?>
我已经从single\\u post\\u title和get\\u category的角度查看了docu,但似乎无法使其只运行一次。非常感谢您的帮助!
最合适的回答,由SO网友:Pieter Goosen 整理而成
这里有一个想法。注意,只有当所有职位都在所需类别中并且所有职位都只有类别时,这才有效
帖子以数组形式返回,您可以通过
$currentissue->posts
记住这一点,您可以按如下方式获得第一个帖子ID
$currentissue->posts[0]->ID
现在,您可以将其添加到变量中
$id = $currentissue->posts[0]->ID
您现在可以使用
get_the_category
检索此帖子所属的类别。记住,根据您的问题,这将是所有帖子所属的类别
像这样的东西会在你的循环之外,在你的if
陈述
$category = get_the_category( $id );
echo $category[0]->cat_name;