rss-icons.jpgКак блоггер, я иногда встречаюсь с такой проблемой — бывает, не заметишь опечатку или ошибку в тексте поста, публикуешь его, и этот недочет автоматом сразу попадает в RSS фид, и RSS подписчики могут его увидеть, что не есть хорошо.

Даже если сразу исправить опечатку в RSS фиде блога она останется видна подписчикам.

Хорошенько погуглив, я нашел простое решение.

Оказывается, можно легко отложить публикацию поста на желаемое количество времени, благодаря чему можно найти и исправить любые опечатки.

Итак, открываем в папке с темой WordPress файл functions.php с помощью текстового редактора, например, Notepad++, и помещаем в него следующий код:

/**
* puplish the content in the feed later
* $where ist default-var in WordPress (wp-includes/query.php)
* This function an a SQL-syntax
*/
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 = ‘5’; // integer цифра 5 означает количество минут для задержки публикации RSS фида. Вы можете поставить нужное вам значение.

h++p://webdorf.ru/wordpress/zaderzhka-rss.html
h++p://wpengineer.com/publish-the-feed-later/

Категория: WordPress | Теги:

Оставьте свой комментарий