web-dev-qa-db-ja.com

過去x年間の投稿を表示するWordpressのカスタムクエリ

私はこのコードで今年からのすべての投稿を表示する方法を見つけました:

<?php
$today = getdate();
$lastyear = $today[ 'year' ];
$args = array( 
    //'nopaging' => true,
    'paged' => $paged,
    'category' => 1, 
    'posts_per_page' => 36,
    'year' => $lastyear,
);
query_posts( $args ); // The Query ?>

    <div id="grid">

    <?php while ( have_posts() ) : the_post(); // The Loop ?>
        <?php get_template_part( 'article', 'thumb' ); ?>
    <?php endwhile; ?>

    </div>

    <?php get_template_part( 'navigation' ); ?>

<?php wp_reset_query(); // Reset Query ?>

しかし、私が本当に欲しいのは、2年前から今日まで(2014年1月です)、つまり2012年、2013年、2014年の投稿を表示することです。

事前に感謝します。

2
Natoli
<?php
$today = getdate();
$args = array( 
    //'nopaging' => true,
    'paged' => $paged,
    'category' => 1, 
    'posts_per_page' => 36,
    'date_query' => array(
        array(
            'after' => $today[ 'month' ] . ' 1st, ' . ($today[ 'year' ] - 2)
        )
    )
);
$catgory_posts = new WP_Query( $args ); // The Query ?>

<div id="grid">

<?php if( $catgory_posts->have_posts() ) while ( $catgory_posts->have_posts() ) : $catgory_posts->the_post(); // The Loop ?>
    <?php get_template_part( 'article', 'thumb' ); ?>
<?php endwhile; ?>

</div>

<?php get_template_part( 'navigation' ); ?>

WordPress codexの日付パラメータを参照してください。 http://codex.wordpress.org/Class_Reference/WP_Query#Date_Parameters

2
Rob Vermeer