Избавляемся от вредной привычки WordPress, ревизий, автосохранений

Если Вы заметили, движок WordPress имеет очень вредную привычку каждых 60 секунд делать резервную копию (автосохранение) ревизия. С одной стороны это хорошо, если Вы пишите пост, а тут бац свет пропал, а наш WordPress сделал ревизию (резервную копию), так что труд Ваш не пропал, он сохранился. Сразу возникает вопрос, а зачем избавляться от автосохранения (ревизий), ведь это хорошая и полезная функция.
Давайте рассмотрим, вы начали писать новый пост как заработать в интернете, на написания поста у Вас ушло не менее 3 часов, так же отредактировали, одну или несколько статей по несколько раз, в результате этого у вас будет больше 300 автосохранений (ревизий). Многовато, согласитесь. При этом они не удаляются и не пропадают, а накапливаются в вашей базе данных, и сколько уже мусора в БД за все время ведения блога, я думаю очень много. За счет этого увеличивается размер БД, что в свою очередь приводит к увеличению нагрузки и уменьшает быстродействие работы блога.
На картинке ниже приведен наглядный пример автосохранения (ревизей), вид ужасен, здесь admin блога очень часто делал изменения в этом посте, а бывает и еще больше.

Клик для увеличения

А теперь давайте разберемся, как избавится от автосохранений, ревизий в WordPress и заодно почистить базу данных от накопившегося мусора.

Для этого у меня имеется, парочку хаков, которые помогут все это решить.

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

Вариант 1
Для этого необходимо перейти в корневую папку своего ресурса и найти файл wp-config.php и прописать ниже приведенный код:
define(‘WP_POST_REVISIONS’, 0);
define(‘WP_POST_REVISIONS’, false);
Также возможен и другой способ чтобы избавится от автосохранений, ревизей WordPress.
В корневой папке, находим папку wp-includes. В ней находим файл – default-constants.php — и находим код:
if ( !defined(‘WP_POST_REVISIONS’) )
define(‘WP_POST_REVISIONS’, true);

В данном коде необходимо заменить – true, на 0 или false.

В результате получится, что пункта «Редакции» после редактировании поста, статьи уже не будет.

Вариант 2
Если вы не желаете избавляться от автосохранений, ревизий полностью, вдруг обратно свет вырубят. Тогда редактируем файл – wp-config.php добавляем ниже приведенный код:
define(‘WP_POST_REVISIONS’, 2);
define( ‘AUTOSAVE_INTERVAL’, 120);
Пояснения:
2 – количество сохранений.
120 — время в секундах автосохранения.

Вот что получится.

Клик для увеличения

Ура! С автосохранениями (ревизиями) разобрались. Теперь дело за чисткой БД от мусора, который собрался за все время.

Как удалить автосохранения, ревизии в WordPress из БД MySQL.
Для этого Вам необходимо зайти на хост и перейти в «Управление базами MySQL».

Внимание!
Перед тем как будите чистить БД MySQL от мусора, настоятельно рекомендую сделать резервную копию на всякий пожарный случай. Для того чтобы можно было вернуть все в первоначальное состояние.

Если вы до этого времени не работали или не сталкивались с базой данных MySQL, настоятельно рекомендую, ознакомится, как сделать резервную копию базы данных.

Выбираем нужную БД MySQL и делаем очистку накопившегося мусора в виде автосохраненных, ревизий. Не дрожите, здесь ничего страшного нет. И помалу учимся работать с блогом, и заодно осваиваем оптимизацию сайта (блога).

Сперва, запоминаем текущий размер БД, чтобы после отчистки Вы смогли, сравнить насколько БД MySQL уменьшилась.

Клик для увеличения

Внутри БД в верхнем меню переходим по вкладке – «SQL» показано на изображении ниже.

Клик для увеличения

После перехода, открывается окно  и вводим командную строку:

DELETE FROM wp_posts WHERE post_type = "revision";

Клик для увеличения

и нажимем «Ок». Появится окно подтверждения, смотрим на изображение ниже.

Клик для увеличения

Нажимаем повторно «Ok». После обработки Вы увидите «Удалено строк: XXX. ( запрос занял ХХ.ХХ сек. )».

Клик для увеличения

Теперь, БД MySQL чиста.

 

С уважением, Андрей Юрийчук

Комментариев к записи: 3

  1. 1
    Jaroslaw says: (1 комм.)

    Вы пишете в вариант 1

    define(‘WP_POST_REVISIONS’, 0);
    define(‘WP_POST_REVISIONS’, false);

    Вопрос: разве 0 и false не одно и то же?

    Спасибо.

    • 1.1
      Андрей says: (60 комм.)
      http://zarobitok.ru/

      в принципе тоже самое ниже данное расписано,

      1
      2
      3
      
      define(‘WP_POST_REVISIONS’, 0);
      или
      define(‘WP_POST_REVISIONS’, false);
  2. 2
    Fanis says: (1 комм.)
    http://home-pg.ru/

    Я установил плагин Revision Control, и с помощью него поудалял лишние копии записей, в базу сам не лез. Хотя и можно было. Ну и этот плагин контролирует чтоб лишние автосохранения не появлялись.

Черкани пару строк

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

WordPress: 7.67MB | MySQL:76 | 1,144sec