Опитимизация WordPress — удаление ревизий из базы данных

Когда вы публикуете материалы в wordpress, при каждом изменении поста wordpress создает и сохраняет резервную копию поста. Если вы один пост подредактировали например раз пять, то wordpress сохранит в своей базе все эти пять постов. Чем больше вы публикуете материалов, чем больше вы их редактируете, тем сильнее и сильнее распухает ваша база данных и тем медленнее начинает работать ваш блог. Как избавиться от этой напасти? Элементарно, помимо того, что существуют плагины которые подчищают базу данных вордпресса, можно очистку сделать и на командном уровне.

Открываем файл wp-config.php (он лежит в корне вашего блога) и внизу добавляем строку

define(‘WP_POST_REVISIONS’, false);

Этим мы запретили вордпрессу создавать ревизии постов. Теперь нам нужно очистить базу данных от хлама который в ней накопился. Для этого открываем при помощи phpMyAdmin базу SQL wordpressa и в меню в SQL запросе вставляем следующий код.

DELETE `p`, `pm`, `c`, `tr`
FROM `wp_posts` AS `p`
LEFT JOIN `wp_postmeta` AS `pm`
ON `p`.`ID` = `pm`.`post_id`
LEFT JOIN `wp_comments` AS `c`
ON `p`.`ID` = `c`.`comment_post_ID`
LEFT JOIN `wp_term_relationships` AS `tr`
ON `p`.`ID` = `tr`.`object_id`
WHERE
`p`.`post_type` = ‘revision’;

После этого оптимизируем базу следующим кодом

OPTIMIZE TABLE
`wp_posts`,
`wp_postmeta`,
`wp_comments`,
`wp_term_relationships`;

Рекомендую перед выполнением этих операций сделать бекап базы. На всякий случай.

Успехов

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *