Главная Новости

Редакции записей в WordPress: их настройка и удаление


Опубликовано: 02.09.2018

видео Редакции записей в WordPress: их настройка и удаление

Форматирование записей в WordPress

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


Руководство #3: Редакции записей в WordPress и как ими управлять

На самом деле редакции очень полезны, потому что создают резервные копии постов, для чего нужны резервные копии думаю объяснять не нужно.

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


Как удалить запись или страницу в WordPress

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

Интервал автосохранения постов

Чтобы задать собственный интервал сохранения редакций, добавляем эту строчку в wp-config.php

define ( 'AUTOSAVE_INTERVAL' , 300 ) ; // интервал в секундах

Полностью отключаем редакции постов

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

Скриншот метабокса с редакциями моего прошлого поста :

Многовато. Тут немного по-английски, потому что на своем блоге я не использую локализаций.

Короче чтобы полностью отключить редакции, засунем этот код в wp-config.php:

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

или этот:

define ( 'WP_POST_REVISIONS' , 0 ) ;

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

Лично я не стал полностью избавляться от редакций, а лишь ограничил их количество, а то 40+ штук к каждому посту — это уже перебор ????

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

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

Можно конечно выполнить запрос через phpMyAdmin, но есть и более действенный способ, не зависящий от префикса базы, просто вставляем этот код в 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' " ) ; // как только редакции исчезнут, код нужно удалить

Этот запрос также удаляет все данные редакций из wp_term_relationships и из wp_postmeta (префикс может быть и не wp_ ), хотя честно говоря я не уверен, что при создании редакций в эти таблицы что-то записывается, однако это может зависеть от способа реализации собственных метабоксов.

Смотрите также

rss