Еще нет стабильной версии для удаления Revision, но порт D7 уже в пути (не уверен, работает ли он вообще).
В этой теме кто-то предложил использовать VBO, чтобы изолировать ревизии и удалить их.
Если вы чувствуете себя комфортно с API, сделайте цикл по всем вашим узлам, извлеките ревизии с помощью node_revision_list()
и удалите их с помощью node_revision_delete()
.
В крайнем случае, и если вам нравится возиться с БД ( как я ), вы можете удалить строки ревизий field_revision_*
и node_revision
таблицы. Попробуй это:
ВНИМАНИЕ: совсем не проверено!
DELETE FROM field_revision_body
WHERE NOT EXISTS (
SELECT NULL
FROM node
WHERE vid = revision_id
);
DELETE FROM node_revision
WHERE NOT EXISTS (
SELECT NULL
FROM node
WHERE node.vid = node_revision.vid
);
Вы можете найти полный список таблиц ваших ревизий в information_schema
базе данных:
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME LIKE 'field_revision%'
AND TABLE_SCHEMA = 'your_database';