Seo-Бизнес блог Progress-project

Все о создании, продвижении сайтов и заработке в интернете

Обновлённый дизайн блога Progress-project
logotip «Progress-project»
logotip «Progress-project»

Автосохранение или ревизии wordpress, как отключить, удалить или ограничить их количество

Здравствуйте, сегодня на «Progress-project» мы с вами снова будем говорить о настройке WordPress сайта или блога, а точнее о том, как отключить, удалить или же попросту ограничить авто-сохранённые копии или ревизии записей в wordpress.

Дело в том, что по умолчанию в наш CMS разработчиками была внедрена функция автоматического сохранения в базу данных двадцати пяти последних копий каждой редактируемой нами записи:

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

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

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

WordPress отключение ревизий (авто сохраненных) редакций

Итак, чтобы в wordpress полностью отключить ревизии или авто-сохранение всех постов, в корневой папке ресурса находим и открываем для редактирования в каком либо редакторе файл cms под названием «wp-config.php», далее здесь находим строчку:

define('WP_DEBUG', false);

И снизу неё прописываем так:

define('WP_POST_REVISIONS', false ); // запретить ревизии постов

Или же так:

define('WP_POST_REVISIONS', 0 );

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

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

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

Открываем уже хорошо знакомый нам файл cms: «wp-config.php» и так же вставляем следующую строчку:

define('WP_POST_REVISIONS', 2); // максимальное число создаваемых редакций

Меняем цифру «2» на необходимое количество ревизий и сохраняем внесённые в файл изменения.

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

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

Как удалить ревизии wordpress записей и авто-сохранений из базы данных сайта

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

В панели управления хостинга кликаем по «Базы данных» либо «MySQL», далее из левой колонки выбераем необходимую базу данных, после чего на вновь открывшейся странички сверху выбераем «SQL»:

Далее в появившуюся форму запросов:

Указываем:

DELETE FROM wp_posts WHERE post_type = 'revision';

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

Всё после этого все ревизии записей будут автоматически удалены из базы данных вашего сайта.

В том случае если вам ещё очень сложно работать с «MySQL» то можно удалить все ревизии wordpress из вашей БД, немного по другому. А именно открываем файл темы «functions.php» и в самый низ до значка ?>, вставляем код:

global $wpdb; $wpdb->query( " DELETE a,b,c FROM $wpdb->posts a LEFT JOIN $wpdb->term_relationships b ON (a.ID = b.object_id) LEFT JOIN $wpdb->postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision' " ); // после того, как редакции исчезнут код необходимо убрать

После того, как все ревизии wordpress будут удалены, код необходимо убрать.

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

С уважением, автор блога!
© progress-project
★Обновлено:2016-06-30

Введите свой e-mail:

Вы можете поделиться статьёй в социальных сетях:

Ваш комментарий

Внимание! Перед тем, как вставить в комментарий: html, php либо JavaScript, преобразуйте его в HTML сущность!

» Подписаться на комментарии по RSS
Поиск по блогу

Введите свой e-mail:

ВКонтакте Google+ Facebook RSS-лента сайта abrek-ad-abra.ru

Топ комментаторов

Виктор(6)
seoonly(4)
Николай(3)
Олег(3)
Иван(3)

© 2015-2017

SEO-Бизнес блог «Progress-project».

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

При использовании материалов сайта гиперссылка на обязательна!



seo-блог