显示特定类别的帖子

时间:2013-03-12 作者:Kenny Bones

我试图显示特定类别的帖子。我相信我有正确的代码:

<?php if ( in_category(\'11\') ) { ?>
     <div class="post"> 
          <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
          <div class="entry">
               <?php the_content(); ?>
          </div>
     </div>
<?php } ?>
我知道这一类中有帖子,因为如果我使用querystring?cat=11 我能看到他们。只是不在这里。什么都没有显示。我做错了什么?

编辑:根据要求,我正在发布来自<?php print_r( $GLOBALS[\'post\'] ); ?>

WP_Post Object ( [ID] => 10 [post_author] => 1 [post_date] => 2013-03-08 12:46:36 [post_date_gmt] => 2013-03-08 12:46:36 [post_content] => This is the content from my static frontpage.php [post_title] => Forside [post_excerpt] => [post_status] => publish [comment_status] => open [ping_status] => open [post_password] => [post_name] => forside [to_ping] => [pinged] => [post_modified] => 2013-03-12 07:30:56 [post_modified_gmt] => 2013-03-12 07:30:56 [post_content_filtered] => [post_parent] => 0 [guid] => http://vsandbox.net/wordpress/?page_id=10 [menu_order] => 0 [post_type] => page [post_mime_type] => [comment_count] => 0 [filter] => raw )
在旁注中,我注意到在另一个线程中,有人在单线程中没有使用它时遇到了问题。php。我甚至不知道那是什么意思。我的意思是,Web设计的每个布局都必须放在自己的页面模板php文件中,对吗?

编辑2:这是frontpage的完整代码。php文件:

<?php
/*
Template Name: Forside
*/
?>
<?php get_header(); ?>

            <div id="content">

                <div id="inner-content" class="wrap clearfix">

                    <div id="main" class="twelvecol first clearfix" role="main">

                    <!-- START LOOP -->
                    <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
        <?php print_r( $GLOBALS[\'post\'] ); ?>
                    <section class="entry-content clearfix" itemprop="articleBody">
                        <?php the_content(); ?>
                    </section> <!-- end article section -->

            <p>Innlemmet 2011</p>
                        <?php if ( in_category(\'11\') ) { ?>
                test
                                <div class="entry">
                                    <?php the_content(); ?>
                                </div>
            <?php } ?>

            <p>Innlemmet 2012</p>
                        <?php if ( in_category(\'12\') ) { ?>
                            <div class="post"> 
                                <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
                                <div class="entry">
                                    <?php the_content(); ?>
                                </div>
                            </div>
            <?php } ?>

            <p>Innlemmet 2013</p>
                        <?php if ( in_category(\'12\') ) { ?>
                            <div class="post"> 
                                <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
                                <div class="entry">
                                    <?php the_content(); ?>
                                </div>
                            </div>
            <?php } ?>

                        <!-- END LOOP -->
                        <?php endwhile; else: ?>
                        <p><?php _e(\'Sorry, no posts matched your criteria.\'); ?></p>
                        <?php endif; ?>

                        </div> <!-- end #main --> 
                </div> <!-- end #inner-content -->

            </div> <!-- end #content -->

<?php get_footer(); ?>

2 个回复
SO网友:Brad Dalton

看看multiple loops 例如

再看看content.php 档案中的2014主题

<?php

// The Query
$category_query = new WP_Query( \'category__in=11\' );

// The Loop
if ( $category_query->have_posts() ) {
    echo \'<ul>\';
    while ( $category_query->have_posts() ) {
        $category_query->the_post();
        echo \'<li>\' . get_the_title() . \'</li>\';
    }
    echo \'</ul>\';
} else {

}
/* Restore original Post Data */
wp_reset_postdata();
别忘了你可以用pre_get_posts 更改现有循环并从任何循环中排除类别。

SO网友:Horttcore

我假设您正在页面上使用此模板。所以你忘了查询分类的帖子。the_post(); 正在反映到页面而不是帖子。

<?php
$query = new WP_Query(\'cat=12\');
if ($query->have_posts()) :
    ?><p>Innlemmet 2012</p><?php
    while ($query->have_posts()) : $query->the_post();
        the_title(); ?>
    endwhile;
endif;
?>
在此处阅读有关WP\\U查询类的信息(https://codex.wordpress.org/Class_Reference/WP_Query)

结束

相关推荐

Sort post's categories by ID

我有一个博客,其中几个帖子的类别必须先输出,然后再输出其他类别。与其他类别相比,这些类别的ID较低。我正在使用get_the_category_list 但它并没有像我预期的那样工作。这让我很困惑,因为我记得有一个主题做得很好。有人能给我指出正确的方向吗?谢谢<?php get_the_category_list( array( \'orderby\' => \'ID\', \'order\' => \'ASC\' ) ); ?>&