我似乎无法让它发挥作用。我有<?php if (have_posts())...etc.
的if语句。然后,在下面我有一个条件语句,确定帖子是否属于某个类别<?php if (is_category())...etc.
。这是我无法做到的部分。我做错了什么?
<?php get_header();?>
<section id="content">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="article-wrapper">
<article id="post-<?php the_ID(); ?>">
<time datetime="<?php the_time('c'); ?>"><?php the_time('F j, Y'); ?></time>
<?php if (is_category('news')) { ?>
<h3><?php the_title(); ?></h3>
<?php the_excerpt(); ?>
<p class="read-more"><a href="<?php the_permalink() ?>" rel="bookmark" title="Read more">Read more</a></p>
<?php } ?>
<?php if (is_category('podcasts')) {
$custom = get_post_custom($post->ID);
$buzzsprout_code = $custom["buzzsprout_code"][0];
echo do_shortcode($buzzsprout_code);
echo '<p class="read-emails"><a href="<?php the_permalink() ?>" rel="bookmark" title="View emails and comment on this episode.">View emails and comment on this episode</a></p>';
} ?>
</article>
</div>
<?php endwhile;endif; ?>
<div id="pagination">
<?php my_paginate_links(); ?>
</div>
</section>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
答案 0 :(得分:2)
来自wordpress docs:
is_category()测试是否显示类别存档,但是您显示的是一个帖子,因此这将始终返回false
in_category()测试一个给定的帖子是否在该特定类别中有一个类别,并且必须在The Loop中使用,但是在进入循环之前,你试图弄清楚该类别是什么。
简短的尝试in_category()
代替。