Как мне получить название категории в пользовательском цикле?
Я использую следующий код для отображения списка сообщений в категории, но я хочу отобразить заголовок в собственном теге h2 над списком.
<ul class="subcats-list">
<?php
$weightloss = new WP_Query();
$weightloss->query('showposts=5&include=4');
while ($weightloss->have_posts()) : $weightloss->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul><!-- subcat -->
РЕДАКТИРОВАТЬ:
Поэтому я попытался использовать single_cat_title
, однако название подходит для родительской категории для всех подразделов подкатегорий. Вот пример div, который я повторяю несколько раз, где запрос извлекает сообщения из разных подкатегорий. Я хотел бы получить название для каждой субподрядной категория над постами. Я понимаю, что это не работает, потому что я возвращаю родительскую категорию с помощью этой функции, я просто не могу разобраться в php...
<ul class="subcats-list">
<h2 class="subcats-title"><?php single_cat_title(); ?></h2>
<?php
$weightloss = new WP_Query();
$weightloss->query('showposts=5&cat=4');
while ($weightloss->have_posts()) : $weightloss->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul><!-- subcat -->
2 answers
Поскольку у вас уже есть идентификатор категории (вы используете его при вызове WP_Query::query()
), вы можете просто использовать его для запроса имени категории. get_cat_name( $cat_id )
будет делать именно это. Он использует get_category( $cat_id )
в фоновом режиме, который возвращает полный объект категории, что может быть полезно, если вы хотите показать больше информации о категории.
Не совсем понятно, о чем вы говорите, вы спросили, как получить название категории внутри пользовательского цикла. Вы имеете в виду конкретную категорию или категорию, связанную с данным сообщением внутри этого цикла?
В любом случае, если вы имеете в виду распечатку названия первой категории для каждой публикации в вашем пользовательском цикле, просто добавьте следующий код где-нибудь внутри вашего цикла.
<?php single_cat_title(); ?>
Документацию по этой функции можно найти здесь:
http://codex.wordpress.org/Function_Reference/single_cat_title
Обратите внимание на комментарий под вашим вопросом, хотя это правильный момент, что вы намеревались сделать с параметром include
, вы пытаетесь отфильтровать этот запрос для определенного набора сообщений?
Допустимые параметры запроса можно найти на WP_query
страница кодекса, если это полезно. Если вы не уверены в том, как задать параметры, просто дайте нам знать..;)