WordPress3.7で追加されたdate_queryが便利

公開日: 

現在のWordPressのバージョンは3.8.1(2014/3/4現在)です。
しばらくWordPressのテンプレートをカスタマイズをしていなかったのですが、
現在の案件で最新2週間分の投稿記事を表示しなければいけなくなりました。

たしか、今までの書き方だと以下のような感じだったと思います。

function filter_where( $where = ” ) {
// posts in the last 30 days
$where .= ” AND post_date > ‘” . date(‘Y-m-d’, strtotime(‘-14 days’)) . “‘”;
return $where;
}

add_filter( ‘posts_where’, ‘filter_where’ );
$query = new WP_Query( $query_string );
remove_filter( ‘posts_where’, ‘filter_where’ );

でも、date_queryがつかえると以下のように書き換える事ができます。

$query = new WP_Query(
array(
‘date_query’=>array(
array(
‘inclusive’=>ture,
‘after’=>date(‘Y/m/d’, strtotime(‘-14 days’)))
)
)
);

すごくソースの見通しが良くなったと思いませんか?

詳しくはClass Reference/WP Queryに書かれています。

WP_Queryを使うとカスタムフィールドを使ったデータなども、欲しいデータを取得できます。

WordPressに関する本はこちら

シェアありがとうございます

  • このエントリーをはてなブックマークに追加
  • Pocket

Your Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

  • プロフィール

    みたやんです。様々なWebシステムの開発に携わってきました。ICTに関する困りごとなら何なりとお問い合わせください。

    似顔絵はかでる工房様に作成していただきました。

PAGE TOP ↑