По умолчанию WordPress сохраняет все ревизии записей и статей при промежуточных сохранениях в процессе их редактирования. Вместе с ревизиями в базе данных может сохранятся и другая информация: их мета-данные и таксономия. Вряд ли они могут оказать какое-либо негативное влияние на небольшой сайт, но со временем база данных будет разрастаться, а ревизии в ней будут занимать значительно больший объем, чем опубликованные страницы и записи.

Перед отключением ревизий и удалением старых редакций не забудьте сделать резервные копии файлов и базы данных вашего сайта.

Отключение или ограничение ревизий

Сохранение ревизий записей и страниц в базе данных сайта WordPress можно отключить или ограничить их количество. Для этого необходимо открыть файл wp-config.php и, чтобы отключить сохранение ревизий полностью, добавить строку:

Define("WP_POST_REVISIONS", false);

Для того, чтобы ограничить количество сохраняемых редакций, замените в добавляемой строке слово false на число, соответствующее желаемому количеству сохраняемых ревизий. Например, для сохранения 3 ревизий добавляемая строка будет выглядеть так:

Define("WP_POST_REVISIONS", 3);

Число 0 в этом выражении будет соответствовать ключевому слову false .

Обратите внимание на то, что добавляемая строка должна быть размещена в файле wp-config.php после строки:

Define("WP_DEBUG", false);

и перед строкой:

У меня добавлено так:

Define("WP_DEBUG", false); /* Отмена или ограничение количества редакций */ define("WP_POST_REVISIONS", false); /* Это всё, дальше не редактируем. Успехов! */

Удаление всех старых редакций

Если вы не сразу отключили сохранение ревизий, то их могло уже набраться достаточно много и, если есть желание, старые редакции можно удалить. Для этого необходимо войти в приложение phpMyAdmin, выбрать базу данных и перейти на вкладку SQL:

Перед удалением всех ревизий из базы данных сайта WordPress, необходимо удалить сначала их мета-данные и таксономию, если они имеются. Скопируйте и вставьте в поле ввода по очереди следующие три команды и нажмите кнопку «Вперёд». Если при установке WordPress вы указали для таблиц базы данных префикс отличный от «wp_», замените в командах ниже «wp_» на свой префикс.

Удаление мета-данных

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

и нажимаем кнопку «Вперёд».

Удалении таксономии

копируем и вставляем в поле ввода SQL-запроса следующую строку:

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

и нажимаем кнопку «Вперёд».

Удаление всех ревизий

копируем и вставляем в поле ввода SQL-запроса следующую строку:

DELETE FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%";

и нажимаем кнопку «Вперёд».

После выполнения каждой команды вы увидите в информационном окне сколько удалено строк из базы данных.

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

  • мета-данные - удалено 0 строк;
  • таксономия - удалено 0 строк;
  • ревизии - удалено 33 строки.

При редактировании одной записи, которое еще не закончено, было создано 33 ненужных мне ревизии. Мета-данных и таксономии, связанных с ревизиями, создано не было.

Сохранение изменений в постах может быть очень полезно при работе в WordPress. Если что-то пойдет не так, и вы потеряете информацию из поста, вы всегда можете получить доступ к предыдущей сохраненной версии вашего поста, для этого достаточно кликнуть по ссылке в меню Редакции под окном редактора.

Много-много ревизий

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

Если вы пишете сообщение в редакторе, то WordPress сохраняет редакции автоматически и при сохранении поста. В результате, не редкость когда бывает более 20 редакций поста. Умножьте это на количество сообщений на вашем сайте, и вы получите мегабайты дополнительных сообщений, хранящихся в базе данных.

Как избавиться от старых редакций

Некоторые люди не любят хранить все эти старые версии в своей базе данных. Они считают, что они замедляют их сайт. Это, однако, миф.

Разработчик WordPress Mike Little в комментарии на сайте WPBeginner ответил, "Запросы WordPress к базе данных не получают редакции, поэтому количество редакций не влияет на скорость выполнения запросов. Единственный раз когда редакции загружаются на страницу, это при редактирования отдельного поста. И это не влияет на скорость загрузки страниц вашего сайта. "

Тем не менее, многие до сих пор считают, что иметь маленькую и легкую базу данных очень хорошо, и поэтому они по-прежнему предпочитают избавляться от своих старых ревизий.

Если вы один из них, то один из трех плагинов приведенных ниже, поможет вам сделать это.

1. Better Delete Revision

Better Delete Revision удаляет старые версии постов, а также оптимизирует вашу базу данных.

На странице плагина говорится: "С помощью оптимизации и удаления старых редакций, этот плагин будет делать вашу базу данных легче и меньше на протяжении всего времени использования. Удаление старых редакций и оптимизация баз данных является одной из лучших вещей, которые вы можете сделать, чтобы ваш блог работал так быстро, как это возможно. "

Посмотрите на страницу настроек плагина, а также процесс удаления.

Плагин отличается от Better Delete Revision тем, что он не выполняет групповое удаление ваших редакций, однако, это даст вам две функции, которые Better Delete Revision не имеет.

Он позволяет сначала определить сколько редакций было сохранено.

И это позволяет вам удалять отдельные редакции на странице редактирования.

3. Revision Cleaner

Плагин Revision Cleaner позволяет каждому пользователю установить интервал времени для автоматического удаления его редакций. Это можно сделать на странице профиля пользователя.

Всем привет, дорогие мои читатели сайт. Не так давно мы разбирали тему на wordpress. Но вот буквально на днях мне пришлось добавить еще один способ к этой статье. Крайне эффективный, когда вы ведете своё блог длительное время при условии, что этой фишки вы не знали.

Эти так называемые ревизии или по-другому редакции существуют еще со старых версий cms wordpress.

Зачем нужны ревизии постов?

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

Получается так, что в процессе написания статьи, когда вы нажимаете кнопку “Сохранить” – у вас создается копия вашей статьи с вашими изменениями. И в любой момент вы можете посмотреть список этих копий и выбрать наиболее подходящую и восстановить.

За всю мою практику мне приходилось восстанавливать копию из подобных резервов лишь однажды. Но тем не менее.

С виду, возможность кажется весьма полезной. Однако надо понимать, что каждое подобное сохранение – это лишняя нагрузка на базу данных, т.к. все копии хранятся именно в ней.

Вот вам пример из жизни. У меня в среднем на блоге было 4-5 ревизий каждой статьи. Представьте когда у вас будут сотни статей написано, а возможно, тысячи статей – удалив ревизии (редакциИ) постов – вы тем самым ускорите свой блог в 5 раз.

А что если у вас не 5 редакций, а 10 к каждому посту? Кстати, сколько у вас, если не секрет? Напишите об этом в комментариях пжлст.

Кстати, самое интересно, что когда вы даже не нажимаете на кнопку “Сохранить” – у вас ревизии постов создаются автоматически. Это называется автосохранение.

Как можно ограничить количество редакций постов?

Мы уже знаем, что все редакции хранятся в базе данных. Чтобы их количество изменить, нам пригодится стандартный “фильтр”, который называется так wp_revisions_to_keep , или с помощью директивы WP_POST_REVISIONS в файле wp-config.php .

Кстати, у меня, почему-то директива в файле wp-config – не сработала. Напишите, у кого она работает в новых версиях WordPress ?

Итак, допустим, мы хотим оставить возможность сохранения ревизий, но оставить, скажем, только 3шт. Для этого нам нужно написать следующее:

Function my_revisions_to_keep($revisions) { return 3; } add_filter("wp_revisions_to_keep", "my_revisions_to_keep");

С помощью wp_revisions_to_keep можно еще ограничивать количество копий в разных типах постов. Точнее в одном типе – одно количество ревизий, в другом – другое.

Ну вот, например, допустим, вам нужно 5 ревизий для страниц и 3 ревизии для статей (постов) и остальных типов записей.

Function my_revisions_to_keep($revisions, $post) { if ("page" == $post->post_type) return 5; else return 3; } add_filter("wp_revisions_to_keep", "my_revisions_to_keep", 5, 2);

Можете еще попробовать использовать WP_POST_REVISIONS в файле wp-config.php , но этот способ не дает возможности разделить на типы записей.

define("WP_POST_REVISIONS", 3);

Как отключить и/или удалить редакции в wordpress

Таким же макаром вы сможете отказаться от ревизий вообще. Нужно просто цифру 0 поставить в ограничениях.

Function my_revisions_to_keep($revisions) { return 0; } add_filter("wp_revisions_to_keep", "my_revisions_to_keep");

Или с помощью файла wp-config.php :

Define("WP_POST_REVISIONS", 0);

Самое главное. Отключение ревизий – никак не повлияет на их существование (уже существующих). т.е. если у вас было к каждой статье по 3-5 ревизий и вы отключили ревизий – старые копии постов все равно останутся. Их нужно удалять руками через БД.

Как же удалить все ревизии, редакции

Итак, мы отключили редакции. МЫ уже знаем что просто отключить редакции – мало. Надо их вырвать с корнем, удалить в ручную через MySQL.

Начнем, пожалуй. Но, перед тем как что-то удалять – сделайте Бекап. Лучше сделать бекап всего сайта.

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

Нечто похожее делаем для таксономий

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

Ну и естественно, удаляем сами редакции (ревизии).

DELETE FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%";

Этот запрос в MySQL удалит вообще все ревизии что есть в вашей базе. Кроме автосохранений.

Автосохранение – тоже считается ревизией, но они не удаляются и не отключаются!! Поэтому чтобы их было как можно меньше – пишите тексты заранее в ворде, а потом просто вставляйте в админку!

Небольшое напоминание о том как работать с MySQL

Если вдруг забыли.

Я работаю с хостингом adminvps , я даже рассказывал почему именно с ним – в этой статье. Так вот, я буду показывать всё на нем.

Заходим в phpMyAdmin в вашей контрольной панели управления хостингом.

Вводим логин и пароль.

Выбрали нужную нам базу данных и нажали кнопку SQL , которая находится сверху.

И мы видим большое поле для того чтобы писать SQL запросы. Для всей БазыДанных.

Туда мы и вписываем все запросы по порядку.

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

А вот что я получил, используя последний запрос.

Посмотрите как после этого мой блог стал шустрее. Это же сказка просто!

Я уверен, что тоже самое есть и у вас! Проверьте и отпишите мне потом об этом.

Плагин для работы с редакциями постов

Могу посоветовать еще плагин Revision Control, он позволяет сделать тоже самое что я описал, только в более комфортном для вас режиме. Прямо в админке.

Если у вас все еще остались вопросы – задавайте, я буду рад вам помочь. На этом пока всё. Спасибо за внимание.

Вслед отправляющемуся поезду под названием «все версии WordPress до 5.0» пишу эту запоздалую статью о ревизиях или редакциях WordPress. Почему запоздалую? Потому что the WordPress revisions system с редактором Gutenberg не будет.

The WordPress revisions system

Часто встречаемое название, того о чём я хочу написать, – ревизии WordPress. По-русски, более правильно эту функцию системы назвать «Редакции WordPress». Именно так переведена эта функция в консоли. Родное название этого функционала, «The revision system», что переводим, как «Система пересмотра». Я буду называть эту функцию системы, как редакции WordPress.

Итак, редакции WordPress, это сохраненные в базе данных копии статей, которые администратор вносит в поле текстового редактора системы.

Статьи могут попасть в редакции WordPress, как после нажатия кнопки «Сохранить» в редакторе, так и в результате автосохранения. Редакции статей и страниц запоминаются по дате и по времени.

Автосохранение статьи это автоматическое запоминание материала системой, без желания администратора. Происходит автосохранение периодически, каждые 2 минуты. Каждая следующая копия, переписывает предыдущую. В списке редакции эта копия так и помечается «Автосохранение» (смотри скрин ниже).

Чем больше вы работаете в редакторе, тем больше автосохранённых копий будут в базе данных вашего сайта. Если к ним добавить копии сохранений сделанных вручную, то становиться очевидна мусорная принадлежность этой «Система пересмотра». Об этом чуть ниже.

Настройки и управление редакции WordPress

Давайте посмотрим, как вообще работает это инструмент. Всё возможности посмотрим на вкладке «Редактировать запись», административной части сайта. Аналогично работает в редакторе страниц.

Внимание! На складках добавления записей и добавления страниц полей редакции НЕТ.

Настройки

Чтобы убрать просмотр сохраненных редакций статьи (страниц), по умолчанию она включена, обращаемся к кнопке «Настройки» в верхнем правом углу страницы «Редактировать запись».

Здесь, традиционно блоки убираются (добавляются) выделением чека, без сохранения изменений.

Управление

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

  • Как видите линейка с ползунком это все копии. Ползунок можно двигать, вызывая ту или иную копию.
  • Есть кнопки Предыдущая и Следующая, объяснять их предназначение, думаю не нужно.
  • Не выделен чек «Сравнить любые две редакции», в основных полях мы увидим сравнение выбранной копии и последнего варианта текста.
  • Если чек «Сравнить любые две редакции» выделить, можно сравнить любые две сохранённые копии, вызывая их ползунком. В основном поле в режиме сравнения видим тексты двух сравниваемых вариантов стаей (страниц).

Для интересующихся первоисточниками, есть кнопка «Помощь», которая даст вам ссылку на страницу Revisions WordPress.org . Круг замкнулся, и мы поняли почему эту функцию называют ревизии WordPress.

Редакции хранятся как дочерние элементы материала. По умолчанию система отслеживает изменения в титле, авторе, контенте и анонсе.

Как отключить

По умолчанию система сохраняет все ревизии обоих вариантов (регулярные и авто). Если вам нужно их (ревизии) можно ограничить. Для этого в файл wp-config вашей рабочей темы вписываете строку:

Define ("WP_POST_REVISIONS", X);

Значение X меняем на:

  • Ноль (0), если НЕ хотим ничего сохранять;
  • -1, если хотим вернуть всё, как было, по умолчанию;
  • Любое число, чтобы заказать количество нужных сохраненных копий.

Не забываем перед реакцией файла wp-config проверить наличие резервной копии сайта. Или как минимум, сделать копию файла до редакции.

Мнение. Я не знаю, зачем отключать сохранение копий. Меня десятки раз автосохранение выручало, при обрыве связи с сервером. Лучше их чистить.

Чистка копий

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

Сделать это можно при помощи плагинов чистки. О них подробно и . Или для фанатов всё делать ручками, идёте в

Хотите избавится от лишнего мусора в базе данных WordPress? Отключите ревизии постов! Если интересно, читайте дальше.

Что такое ревизии?

Когда Вы создаете новую запись или страницу на сайте, потом сохраняете ее, и еще после этого несколько раз редактируете, “движок” автоматически сохраняет все ее версии в своей базе данных. Их и называют ревизиями.

Зачем отключать ревизии в WordPress?

Если на Вашем сайте не более одного десятка записей, то беспокоится не о чем. Но в случае наличия не их не одной сотни, тут уже стоит задуматься. Ведь одна статья может поддаваться корректировкам несколько десятков раз, пока не будет опубликована. Значит в базе будет храниться и несколько десятков ее копий. В принципе это с одной стороны удобно, так как позволяет просмотреть все изменения, какие-либо из них вернуть и т.д. Но после того, как публикация выставлена на сайте, ее дубликаты уже никому не нужны.

Как отключить ревизии в WordPress?

Если Вы счастливый обладатель многофункционального премиум-плагина , то Вам не придется искать каких-либо других решений. Одной из его функций является полное отключение создания ревизий. Для этого нужно перейти в админ-раздел Clearfy Pro и на вкладке Дополнительно активировать настройку Отключить ревизии полностью .

Другие способы

Плагин Revision Control

Revision Control – отдельный плагин для управления ревизиями на сайте WordPress. Основной его особенностью является возможность указать, для каких типов записей (Страницы или Записи) запрещать создание копий.

Итак, после его установки и активации следует перейти в админке Настройки -> Revisions.

Вы можете отключить создание ревизий для нужного типа записей. Для этого служат соответствующие поля: Posts (Записи) и Pages (Страницы). Для сохранения всех изменений нужно нажать кнопку Save Changes.

Плагин Disable Post Revision

Disable Post Revision является отдельным плагином, выполняющим только одну функцию – полное отключение создания копий контента. Для этого его нужно просто установить и активировать. Основным преимуществом плагина является отсутствие каких-либо страниц настроек. Он начинает выполнять свою работу сразу после активации.