我在我的 Wordpress 主题的一个页面模板中遇到了一些问题。我希望列出所有帖子,但排除一个类别的帖子(id:4)。
下面我query_posts()
按照Codex 文档使用:
<?php get_header(); ?>
<?php while ( have_posts() ) : the_post(); ?>
<header
<?php
if ( has_post_thumbnail()) {
$large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'large');
echo 'style="background-image:url(' . $large_image_url[0] . ')"';
}
?>
>
<div class="row">
<div class="page-title small-12 large-8 columns">
<h1>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</h1>
</div>
</div>
</header>
<?php get_template_part( 'content', 'headerbanner' ); ?>
<?php endwhile;?>
<section class="container main-content">
<div class="row">
<div id="content" class="small-12 columns">
<?php query_posts($query_string . '&cat=-4'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<?php the_content(); ?>
<?php endwhile; else: ?>
<p>Sorry, no posts matched your criteria.</p>
<?php endif; ?>
</div>
</div>
</section>
<?php get_footer(); ?>
问题是这不会返回帖子列表。相反,它只返回页面本身的详细信息(在本例中称为“博客”)。