Советы по работе с ревизиями в WordPress

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

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

Итак, давайте посмотрим, что мы можем сделать с ревизиями в WordPress своими руками.

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

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

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

define('WP_POST_REVISIONS', 3);

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

Отключаем создание ревизий

Если даже 3 ревизии для вас слишком много, то в таком случае вы можете просто их отключить (учтите, что одна ревизия все равно будет создаваться по умолчанию):

define('WP_POST_REVISIONS', false );

Ручное удаление ревизий через SQL-запрос

Если вы не хотите по каким-то причинам пользоваться плагинами, такими как Better Delete Revision, то вы можете все сделать вручную, через SQL-запросы к БД.

Для начала можно проверить, сколько скопилось ревизий вообще:

SELECT count(*) FROM wp_posts WHERE post_type = “revision”;

Если их много, можно вручную удалить их:

DELETE FROM wp_posts WHERE post_type = “revision”;

Работает этот запрос очень просто. Таблица wp_posts содержит в себе все данные для записей и страниц, где post_type  может принимать значения «post», «page» или «revision». Запрос позволяет избавиться от всех записей, которые имеют тип «revision».

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

Блог про WordPress
Комментарии: 6
  1. Otshelnik-fm

    Примечание: В синтаксисе sql запроса в wp_posts префикс wp_ нужно поменять на свой, тот который вы задавали при настройке сайта.

    p.s. на главной странице появились последние комментарии. Но отдельная страница с пагинацией будет лучше. Я использую WP-RecentComments — он с помощью ajax загружает следующую страницу комментариев. Очень удобен.

    1. Дмитрий (автор)

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

  2. Дмитрий (автор)

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

  3. Волшебник

    Сразу же после установки чистого вордпресс 3.6.0 я отредактировал файлы конфигурации и отключил там создание ревизий. И они не создавались. Стоило обновиться до 3.6.1 и они снова стали создаваться. Проверил конфиг файл, в нём по прежнему выставлено define(‘WP_POST_REVISIONS’, false );

    Видимо вордрпессу конфиг не указ, и он считает себя умнее пользователя.

  4. Мария

    А как по мне, они весят копейки и вообще не стоит ими заниматься ;) Вы просто сами создали себе проблему!

  5. Otshelnik-Fm

    Мария вы неправы. Не стоит равнять на свой бложик с тремя записями — да это копейки.

Добавить комментарий для Architect Of Ruin Отменить ответ

Получать новые комментарии по электронной почте.