WordPress:現在の投稿記事が何番目か取得する方法
get_postsを使った下記のコードで詳細ページの投稿が何番目の記事なのか表示することが出来ます。
get_postsとwp_queryを組み合わせています。
<p> <?php $date = get_post(get_the_ID()); $post_datetime = strtotime($date->post_date); $num_arg = array( 'post_type' => 'fukumen', 'posts_per_page' => -1, 'date_query' => array( 'year' => date('Y', $post_datetime), 'monthnum' => date('n', $post_datetime), 'day' => date('j', $post_datetime), 'hour' => date('G', $post_datetime), 'minute' => (int) date('i', $post_datetime), 'second' => (int) date('s', $post_datetime), 'compare' => '>=', ), ); $my_query = get_posts($num_arg); echo (count($my_query)); ?> </p>
下記のコードも上記のものと同じです。
$queryを別々に書いて最後に$num_arg['date_query'] = $date_query;で、配列のキーdate_query'に$date_queryを代入しています。
<p> <?php $date = get_post(get_the_ID()); $num_arg = array( 'post_type' => 'fukumen', 'posts_per_page' => -1, ); $post_datetime = strtotime($date->post_date); $date_query = array( 'year' => date('Y', $post_datetime), 'monthnum' => date('n', $post_datetime), 'day' => date('j', $post_datetime), 'hour' => date('G', $post_datetime), 'minute' => (int) date('i', $post_datetime), 'second' => (int) date('s', $post_datetime), 'compare' => '>=', ); $num_arg['date_query'] = $date_query; $my_query = get_posts($num_arg); echo (count($my_query)); ?> </p>
テンプレートタグ/get posts
関数リファレンス/WP Query