Как удалить ревизии wordpress? избавляемся от лишнего мусора!!! Редакции WordPress, ревизии и автосохранение Wordpress убрать из публикации старые

Сохранение изменений в постах может быть очень полезно при работе в 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 до 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 существуют уже давно. Они позволяют сохранять резервную копию записи или страницы при каждом изменении, а затем просматривать все версии с возможностью восстановить любую из них.

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

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

Ограничение количества редакций

По умолчанию WordPress хранит все редакции для записей и страниц. Это легко изменить с помощью фильтра wp_revisions_to_keep в вашем плагине, или с помощью константы WP_POST_REVISIONS в файле конфигурации wp-config.php . Например, если нам нужно сохранять только 5 последних версий записей и страниц, наш плагин будет выглядеть так:

/** * Plugin Name: My Revisions Config */ function my_revisions_to_keep($revisions) { return 5; } add_filter("wp_revisions_to_keep", "my_revisions_to_keep");

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

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

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

Define("WP_POST_REVISIONS", 5);

Как отключить редакции

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

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);

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

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

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

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

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%";

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

Советуем так же рассмотреть плагин Revision Control , который позволяет просматривать и удалять редакции в WordPress, а так же предоставляет интерфейс для установления ограничения на количество редакций для записей и страниц.

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

История изменений в WordPress – удобный функционал, существующий в WordPress. Его по достоинству оценили авторы контента, регулярно публикующие свои материалы. Зачастую в процессе редактирования записи можно допустить случайные ошибки или опечатки. К примеру, вы случайно удалили часть своей записи. Вернуть это возможно: благодаря ревизиям можно всегда откатиться к одной из версий записи.

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

История изменений в WordPress: что это такое

Знаете ли вы о том, что WordPress автоматически сохраняет все изменения, внесенные вами в посты. Вы можете отменить эти изменения и вернуться к более ранней версии в любой момент времени. Этот функционал называется ревизиями (версиями). Он был введен еще в WordPress 2.6.

Благодаря этой возможности WordPress будет сохранять пост в виде ревизии всякий раз, когда вы нажимаете на кнопку «Save as Draft» (Сохранить как черновик) либо во время каждого автоматического сохранения записи. Функция автоматического сохранения активируется каждые 60 секунд – это специальная ревизия, которая заменяется новыми автосохраняемыми версиями.

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

Как работать с историей изменений в WordPress

Как видно из представленного ниже скриншота, ревизии расположены в разделе Publish на экране редактирования записи. Вы также можете вывести ревизии в редакторе записей путем щелчка по Screen Options и выбора пункта Revisions.

Если вы перейдете по ссылке Browse, вы попадете на страницу Revisions. Здесь вы можете видеть изменения, относящиеся к каждой версии – для этого используйте слайдер в верхней части экрана. Вы также можете использовать кнопки Previous и Next. Имеется функционал для сравнения двух ревизий. В окне будет указано, что было добавлено, что осталось без изменений и что было удалено.

Что можно делать с ревизиями: можно либо восстановить ревизию, либо оставить запись как есть. Если вы хотите восстановить определенную ревизию, вы можете сделать это путем нажатия по кнопке Restore this revision. Ссылка Return to post editor позволит вам вернуться к своему посту, не внося никаких изменений.

Какие типы контента поддерживают ревизии?

История изменений WordPress работает для всех записей и страниц вашего сайта, а также для произвольных типов записей, таких как Portfolio и Testimonials (добавляются Jetpack).

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

$supports = array("title", "editor", "revisions");

Код для произвольных типов записей обычно располагается в файле functions.php. Поместите строку выше над строкой, которая начинается с register_post_type.

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

Включаем или полностью отключаем ревизии

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

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

Define("WP_POST_REVISIONS", true);

Вы можете также полностью отключить ревизии, установив для них значение false:

Define("WP_POST_REVISIONS", false);

Ограничиваем количество доступных ревизий

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

Define("WP_POST_REVISIONS", 5);

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

Управление ревизиями для каждой записи

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

Add_filter("wp_revisions_to_keep", "filter_function_name", 10, 2); function filter_function_name($num, $post) { return $num; }

Здесь мы передаем WP_Post объект, который представляет целевую запись и требуемое количество версий.

Плагины для управления ревизиями

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

Optimize Database After Deleting Revisions

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

  • Удаление ревизий для записей, страниц и произвольных типов записей.
  • Выбор количества сохраняемых ревизий.
  • Удаление спам-комментариев, неиспользуемых меток.
  • Удаление пингбэков и трэкбэков.
  • Оптимизация таблиц базы данных.
  • И т.д.

Плагин совместим с мультисайтами. Он поддерживает периодический запуск очистки.

WP Revisions Control

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

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

Он добавляет следующие поля к системе ревизий:

  • The Author
  • Post Date
  • Permalink
  • Post Status
  • Post Password
  • Comment Status
  • Ping Status
  • Post/Page Parent
  • Menu Order

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

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

Другие возможности:

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

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

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

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

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

Ревизии в WordPress – это автоматическое резервное сохранение содержимого записи или страницы во избежание потери данных. Из них можно восстановить более ранние копии документов.

Многие, наверное, догадались о том, что ревизии WordPress служат для того, чтобы избежать потери данных. Они настраиваются в автоматическом режиме и делают резервную копию через определенный промежуток времени (каждые 60 секунд). Они складываются в базу данных (MySql - phpMyAdmin). Посмотреть список ревизий в WordPress можно чуть ниже окна правки записи (в режиме редактирования). Если прокрутить страницу, то чуть ниже их можно увидеть в окне «Редакции». Выглядят они следующим образом:

Наверное, у вас уже возник вопрос «Зачем удалять или отключать ревизии?», если они исполняют такую полезную роль. Вся проблема состоит в том, что копии записей, статей или постов очень загружают базу данных, в которую они заносятся. Это приводит не только к будущей проблеме ее редактирования и внесения изменений, но и к медленной загрузке страниц сайта. Советую прочитать пост « ». Поисковые системы стали обращать особое внимание на этот параметр. Так же, кстати, от этого напрямую зависит поведенческий фактор, показатель которого формируется из оценки поведения пользователей.

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

Как удалить ревизии в WordPress

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

Способ №1. Плагин Better Delete Revision

Мы будем использовать специально созданный плагин для удаления ревизий – Better Delete Revision. Скачайте его через адмику и установите. После активации в разделе настройки появится пункт с названием аналогичным имени плагина – это настройки.

Можете сразу оптимизировать базу данных или перейти во вкладку “Проверить записи ревизий” и уже из нее почистить свой блог от лишних копий документов.

Способ №2.Удаление прямо из базы данных

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

После выбора нужной базы, найдите вкладку «SQL», откройте ее так, чтобы перед вами появилось пустое поле.

В него вам нужно скопировать расположенный ниже код и нажать на кнопку «ОК». Этим действием вы сделаете SQL запрос на удаление ревизий из базы данных.

DELETE FROM wp_posts WHERE post_type = «revision»;

Должно получиться как на картинке:

Если ваши действия окажутся удачными, то в ответ вы увидите сообщение следующего вида. Если ранее ревизии вы не удаляли или не отключали, то количество строк будет отличным от нуля.

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

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

Чтобы отключить ревизии, вам надо пройти на хостинг и отредактировать файл wp-config.php, который расположен в корневой папке. В него вставьте код с параметром:

Define("WP_POST_REVISIONS", 3);

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

После окончания внесения изменений нажмите на кнопку «Сохранить». Теперь ваша база не будет раздуваться как тесто на дрожжах при каждой правке статей.

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