WordPress: список новых записей за определенный период

Продолжаем нашу серию публикаций готовых решений для WordPress. Давайте сформулируем и решим небольшую задачку.

Что нужно сделать:

  • вывести список публикаций за определенный период,
  • вывести счетчик новых публикаций.

Итак, решаем обе задачи разом:

<?php
function filter_where($where = '') {
//публикации за последние 30 дней
$where .= " AND post_date > '" . date('Y-m-d', strtotime('-30 days')) . "'";
return $where;
}
add_filter('posts_where', 'filter_where');
$args=array(
'post_type' => 'posts', //укажите свой тип публикаций
'post_status' => 'publish', //считаем только опубликованные записи
'showposts' => -1,
'caller_get_posts'=> 1
);
$my_query=new WP_Query($args);
remove_filter('posts_where', 'filter_where');

if( $my_query->have_posts() ) {
//счетчик новых записей
echo '<h2>Количество публикаций за последние 30 дней: '.count($my_query->posts) . '</h2>';
while ($my_query->have_posts()) : $my_query->the_post();
?>

<div class="item">
<h3><?php the_time('d.m.y') ?> <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
</div>
<?php
endwhile;
}
wp_reset_query();
?>

Данный код можно установить непосредственно в шаблон.

В результате получаем:

Собственно, вот и все! До скорого.

Опубликовано: 5 июня 2016 года, в рубрике «Wordpress».

Оставить комментарий

5000
  Подписаться  
Уведомление о
Поблагодарить автора статьи
Зачем это нужно