Как закрепить постов на главной на время, после окончания времени публикации убрать автоматически?

такая идея возможность пользователям на стуки закрепить пост 4 раза в блоке Промо в течение месяца (30 дней). Но как выставить этот срок и где хранить? Нашел функцию для скрывания постов после окончания срока годности

    function tutsplus_filter_expired_posts( $query ) {
          
        // doesn't affect admin screens
        if ( is_admin() )
            return;
        // check for main query 
        if ( $query->is_main_query() ) {
      
            //filter out expired posts
            $today = date('d-m-Y');
            $metaquery = array(
                array(
                     'key' => 'expires',
                     'value' => $today,
                     'type' => 'DATE',
                     'compare' => '<'
                )
            );
            $query->set( 'meta_query', $metaquery );
        }
    }
    add_action( 'pre_get_posts', 'tutsplus_fil

ter_expired_posts' );

или лучше что-то вроде этого добавить в шаблон ?

function deleteOldStickies($post_id, $postDate) {
    $postDate = strtotime($postDate);
    $expire = strtotime('-1 day') + get_option( 'gmt_offset' ) * 3600;
    if ($postDate < $expire && is_sticky()) {
        unstick_post($post_id);
    }
}
deleteOldStickies($post->ID, $post->post_date)

Ответы (0 шт):