✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

Программный поиск сообщений WordPress по диапазону дат

16

TL;DR: код, опубликованный в этом сообщении, показывает, как вы можете изменить запрос, который выполняется на странице «Все сообщения », чтобы вы могли ограничить поиск сообщений определенным диапазоном дат.

Прошло некоторое время с тех пор, как я в последний раз писал об использовании post_whereфильтра для изменения поискового запроса, который выполняется на данной странице, например, в области «Все сообщения» WordPress. Но, учитывая тот факт, что существует множество применений для извлечения сообщений — и настраиваемых типов сообщений — по-разному, существует множество способов использования этого единственного фильтра.

Поиск сообщений по диапазону дат

Для поиска сообщений по диапазону дат необходимо выполнить следующие действия:

  1. Зарегистрируйте обратный звонок с posts_whereфильтром,
  2. Убедитесь, что функция принимает строку whereи экземпляр WP_Query, который выполняется на странице.
  3. Получить сегодняшнюю дату и время, а также дату и время четырехнедельной давности
  4. Добавьте whereпредложение, чтобы ограничить результаты датой
  5. returnобновленный запрос.

Результатом этой функции является измененный запрос, который ограничивает сообщения, возвращаемые указанной датой и временем. А именно, четыре недели назад с точностью до часа, минуты и секунды.

Вы можете изменить это, обновив -4 weeksстроку, переданную strtotimeфункции (но я рекомендую просмотреть страницу руководства по PHP, указанную ниже, чтобы понять, как эта функция работает с таким языком).

использованная литература

  • [posts_where](https://developer.wordpress.org/reference/hooks/posts_where/)
  • [WP_Query](https://developer.wordpress.org/reference/classes/wp_query/)
  • [wpdb](https://developer.wordpress.org/reference/classes/wpdb/)
  • [gmdate](https://www.php.net/manual/en/function.gmdate.php)
  • [strtotime](https://www.php.net/manual/en/function.strtotime.php)

Источник записи: tommcfarlin.com

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее