Получаем запись, опубликованную в промежуток между двумя датами

Проблема
Главный цикл и функция WordPress query_posts() WordPress позволяют легко получить список записей, опубликованных в определённую неделю или месяц. К сожалению, вытащить записи, опубликованные, например, после 17 марта и до 3 мая будет не просто. Решим данную задачу.

Решение
Просто скопируйте ниже приведённый код в вашу тему в то место, где нужно выводить список записей, опубликованных между двумя датами. Обязательно поменяйте даты в коде на те, которые нужны вам.
<?php
  function filter_where($where = '') {
        $where .= " AND post_date >= '2009-03-17' AND post_date <= '2009-05-03'";
    return $where;
  }
add_filter('posts_where', 'filter_where');
query_posts($query_string);
while (have_posts()) :
      the_post();
      the_content();
endwhile;
 
?>

Описание решения
Для решения задачи сначала мы создаем функцию filter_where(), которая содержит условие SQL “WHERE”. Затем перед запуском главного цикла функция filter_where() будет вызываться функцией WordPress post_where().

В результате условие “WHERE”, которое содержится в функции filter_where(), добавляется в конец запроса SQL, содержащегося в функции post_where(). Значит, главный цикл вернет только те записи, которые были опубликованы в период между двумя датами, заданными в функции filter_where().
Теги:
запись
Добавлено: 01 Мая 2018 20:21:42 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...