Эта статья — продолжении серии статей. Советую прочитать с самого начала.
Когда вы публикуете очередную статью статье — одновременно происходит публикация и в RSS ленте. Наверное, стоит этот режим настроить таким образом, чтобы публикация в RSS ленте происходила немного позже.
Чтобы запустить эту функцию, — добавьте ее в файл functions.php вашей активной темы:
// delay feed update 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 = '10'; // integer // https://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');
(тестировал на WordPress 3.5.1)
В примере выше функция настроена на задержку публикации на 10 минут. Время можно менять.
По умолчанию, в системе WordPress нет ограничений на число Ревизий для одной публикации. Из-за этого база данных WordPress может быть «раздута» на очень большое количество хранимых записей. Советую установить ограничение. Код ниже надо добавить в файл wp-config.php:
/** * Set the post revisions unless the constant was set in wp-config.php */ if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 5);
(тестировал на WordPress 3.5.1)
В примере число 5 — максимальное число Ревизий для одной записи. Можно редактировать.
Посмотрите ниже пример:
Слева — изображения не имеют четкости. Справа — измененные изображения с помощью функции, которую я добавил ниже:
function ajx_sharpen_resized_files( $resized_file ) { $image = wp_load_image( $resized_file ); if ( !is_resource( $image ) ) return new WP_Error( 'error_loading_image', $image, $file ); $size = @getimagesize( $resized_file ); if ( !$size ) return new WP_Error('invalid_image', __('Could not read image size'), $file); list($orig_w, $orig_h, $orig_type) = $size; switch ( $orig_type ) { case IMAGETYPE_JPEG: $matrix = array( array(-1, -1, -1), array(-1, 16, -1), array(-1, -1, -1), ); $divisor = array_sum(array_map('array_sum', $matrix)); $offset = 0; imageconvolution($image, $matrix, $divisor, $offset); imagejpeg($image, $resized_file,apply_filters( 'jpeg_quality', 90, 'edit_image' )); break; case IMAGETYPE_PNG: return $resized_file; case IMAGETYPE_GIF: return $resized_file; } return $resized_file; } add_filter('image_make_intermediate_size', 'ajx_sharpen_resized_files',900);
(тестировал на WordPress 3.5.1)
Хотите заказать профессионалам разработку уникального рекламного баннера? Дизайн баннера стоимость — качество гарантировано профессионалами.
Понравилась статья? Поделись с друзьями!
Извините за мою не компетентность. Для чего нужна задержка публикации?
Для избежания дублирования контента в индексе поисковых систем
Уточните, пожалуйста, в какое конкретно место нужно добавлять коды? Судя по скринам (нумерация строк) — сверху? Или в самый низ кода ДО ?.>
В первой статье этой серии я написал, что большинство функций, о которых я написал и буду писать дальше, надо добавлять в файл functions.php вашей активной темы.
В каком именно месте — все равно, главное — код надо вставлять между началом кода функции PHP и ее окончанием.
Любая функция PHP начинается с открывающегося тега
и заканчивается закрывающимся тегом PHP —
.
В первой статье серии я дал несколько общих правил и советую их придерживаться.
Ну, и самое главное: не надо меня винить в том, что ваш сайт после добавления функции перестанет работать. Причин м.б. несколько, почему так случилось.
Ни в одной из причин я не виноват. Каждая из описанных мной функций тестировалась на WordPress 3.5.1. и об этом я пишу каждый раз в конце описания кода функций.