Как удалить переходное сообщение при публикации поста/страницы?


У меня есть временный набор для пользовательского запроса. Срок его действия истекает через 30 дней. Но мне также нужно, чтобы срок его действия истек после публикации нового сообщения/страницы. Чтобы новая опубликованная запись/страница была доступна в этом пользовательском запросе. Как удалить переходное сообщение при публикации поста/страницы?

Как я устанавливаю переходный процесс:

// Get any existing copy of our transient data
   if ( false === ( $query = get_transient('d_results') ) ) {
    // It wasn't there, so regenerate the data and save the transient
    $randargs = array("post_type"=>"", "orderby"=>"", "order"=>"", "posts_per_page"=>-1);
    $query = new WP_Query($randargs);
    set_transient( 'd_results', $query, DAY_IN_SECONDS * 30);
   }
Author: gdaniel, 2014-05-14

1 answers

Я рассматриваю это для публикации нового поста.

Добавьте приведенный ниже код в активную тему functions.php файл.

function wpse_delete_query_transient( $post ) {
    // Deletes the transient when a new post is published
    delete_transient( 'd_results' );
}
add_action( 'new_to_publish', 'wpse_delete_query_transient' );

Это приведет к удалению переходного периода при каждой публикации нового сообщения.

Если вы хотите удалить переходные процессы при различных переходах статуса сообщения, вы можете заглянуть в кодекс

 3
Author: Maruti Mohanty, 2014-05-14 18:46:59