Как отложить публикацию в ленте RSS на WordPress

25.11.2016 | Автор: Maxim Glovatsky Оставить комментарий »

Если Вы часто пишите и заботитесь о качестве дневника на WordPress, то это для Вас. Главная задача этого хака — позволить Вам сделать так, чтобы Ваши посты попадали в ленту RSS чуть позже, чем обычно, чтобы Вы могли внести последние корректировки в пост уже после его публикации. Итак, в файле functions.php пишем следующий код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
function publish_later_on_feed($where) {
    global $wpdb;
 
    if ( is_feed() ) {
        // timestamp in WP-format
        $now = gmdate('Y-m-d H:i:s');
 
        // value for wait; + device
        $wait = '5'; // integer
 
        // http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
        $device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
 
        // add SQL-sytax to default $where
        $where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
    }
    return $where;
}
 
add_filter('posts_where', 'publish_later_on_feed');
?>

Чтобы изменить время задержки публикации, меняем $wait в 9й строке.

Добавить комментарий