Flector

Как задержать публикацию записей в RSS?

WordPress обновляет RSS ленты сайта немедленно после публикации записей. Это плохо тем, что лишает вас возможности быстро исправить опечатку в только что опубликованной записи. То есть, конечно, опечатку вы исправите, и запись будет обновлена в RSS ленте тоже. Беда тут только в том, что многие RSS читалки кэшируют RSS ленты и не будут их обновлять без появления в них нового контента (то есть новой записи). Чтобы избежать такой ситуации можно сделать задержку публикации записи в RSS с помощью такого кода в файле functions.php вашей темы:

//задержка публикации записей в RSS start 
function whp_feed_pause($where) {
    global $wpdb;
    if (is_feed()) {
         $now = gmdate('Y-m-d H:i:s');
         $wait = '5';
         $device = 'MINUTE';
         $where .= " AND TIMESTAMPDIFF($device, 
         $wpdb->posts.post_date_gmt, '$now') > $wait ";
    }
    return $where;
}
add_filter('posts_where', 'whp_feed_pause'); 
//задержка публикации записей в RSS end

Где число 5 это количество минут задержки перед публикацией записей в RSS.


Написать комментарий

Для вставки кода воспользуйтесь кнопкой "Код". Используйте предпросмотр!