2012-05-29

[WordPress] 最新一週間の記事を取得する


CMSとして構築したあるサイトで、新商品のカテゴリがあり、
日付が1週間以内でなければループ処理を抜けるといったことをしていたのですが、
そのやり方ではページナビがおかしいことが判明。
query_postsで期間を指定して記事を取得するやり方を調べました。


query_postsのSQLにフィルタを加えるというわけですね。

function filter_where( $where = '' ) {
$where .= " AND post_date > '" . date('Y-m-d', strtotime('-7 days')) . "'";
return $where;
}
add_filter( 'posts_where', 'filter_where' );
global $query_string;
query_posts( $query_string.'&posts_per_page=20&orderby=date&order=DESC' );


最後にwp_reset_query()も忘れずに。
これで最新一週間の記事を取得すればページナビもちゃんと機能しました。


参考サイト
http://webcake.no003.info/webdesign/wp-queryposts-datesearch.html

Comment:

Trackback URL: