Intereting Posts
Присвоить конкретные объявления определенным категориям / сообщениям Не удается войти в админ, нет сообщения об ошибке Проводка через HTTP-запросы? Должен ли я использовать add_filter для функций в function.php темы? WPML – изменение языка большого количества сообщений Использование fetch_feed для извлечения элементов с не общим заголовком Как я могу создать динамическую форму поиска при преобразовании Html в WordPress? Отфильтровать в ответ комментарии от панели управления WordPress Описания категорий – HTML? Изменить основной запрос на поиск сообщений по имени пользователя coauthor Проверьте, существует ли изображение перед загрузкой с помощью media_sideload_image () Страница сведений о продукте с таким путем, как этот веб-сайт / product /product-name/, из некоторых уже существующих данных базы данных Обновление wordpress Core удаленно Сайт WordPress в пользовательском приложении для Android почему пользовательский пост-архив всегда содержит не более 10 сообщений, несмотря на настройки пейджинга?

wp_query (или hook) по дате (id) в массиве, затем установите post_type

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

  1. захватить все сообщения ids с post_type = 'post' до определенной даты с текущей даты в массив
  2. foreach все в массиве и установить каждый в массиве post_type = 'customposttype'
  3. выполните любую обработку, которую WordPress требует очистки после этого «крючка». (Я не уверен, что это нужно сделать.)

Поскольку я создаю плагин, другой плагин мне не поможет, но я определенно открыт для предложений. Спасибо!

Спасибо @pietergoosen за «шутку», давая мне ответ.

  function gm_gather_posts_in_array() { $set_days_before = '1275'; $posts_to_be_processed = date('Ym-d', strtotime("today - $set_days_before days")); $args = array( 'post_type' => 'post', 'post_status' => 'publish', 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page' => -1, 'fields' => 'ids', 'date_query' => array( array( 'before' => $posts_to_be_processed ) ) ); $posts_to_be_processed = new WP_Query( $args ); return $posts_to_be_processed; } function gm_update_posts_to_be_archived() { $posts_ready_to_be_processed = gm_gather_posts_in_array(); if ( $posts_ready_to_be_processed->have_posts() ) { while ( $posts_ready_to_be_processed->have_posts() ) { $posts_ready_to_be_processed->the_post(); $process_post = array( 'ID' => get_the_id(), 'post_type' => 'custom_post_type', ); wp_update_post( $process_post ); } } wp_reset_postdata(); } echo gm_update_posts_to_be_processed();