web-dev-qa-db-ja.com

フッターのカテゴリからの5つの投稿

私は自分のホームフッターにあるカテゴリからの5つの投稿を表示しようとしています。このコードを配置しました

<?php query_posts( 'category_name=entertainment&posts_per_page=5' ); ?>

私のhome.phpファイルには、5つ以上の投稿が表示されていることを除けば、すべてうまくいきます。実際には、そのカテゴリからのすべての投稿を表示しています。私はshowposts=5も試しましたが、それでもうまくいきません。

これは私のhome.phpの完全なコードです。

    <?php query_posts( 'category_name=entertainment&posts_per_page=5' ); ?>
 <?php
if (__FILE__ == $_SERVER['SCRIPT_FILENAME']) { die(); }
if (CFCT_DEBUG) { cfct_banner(__FILE__); }

if (have_posts()) {
    echo '<ul class="disclosure table group">';
    while (have_posts()) {
        the_post();
?>
    <li>
<?php

        if(has_post_thumbnail())
{ the_post_thumbnail();}    cfct_excerpt();

?>
    </li>
<?php
    }
    echo '<li class="pagination">', cfct_misc('nav-list'),'</li>';
    echo '</ul>';
}

?>    
1
Tarrmie de Man

まず、 query_posts を使用しないでください。 2番目:代わりに $wp_query を使用してください。

$args = array (
  'category_name' => 'entertainment',
  'posts_per_page'=> 5
  );
$the_query = new WP_Query( $args );

if ( $the_query->have_posts() ) {
    echo '<ul>';
    while ( $the_query->have_posts() ) {
        $the_query->the_post();
        echo '<li>' . get_the_title() . '</li>';
    }
    echo '</ul>';
    /* Restore original Post Data */
    wp_reset_postdata();
    }
else {
    // no posts found
    }
1
cjbj

get_posts() 関数を使用することをお勧めします。以下のコードであなたは5ポストオブジェクトを得るでしょう -

$args = array (
  'category_name' => 'entertainment',
  'posts_per_page'=> 5
);

$posts = get_posts($args);

ここで$posts変数に5つの投稿があります。

0
CodeMascot