Vẫn chưa có bản phát hành ổn định để xóa Revision nhưng một cổng D7 đang trên đường (không chắc là nó có hoạt động không).
Trong chủ đề này, ai đó đã đề xuất sử dụng VBO để cô lập các bản sửa đổi và xóa chúng.
Nếu bạn cảm thấy thoải mái với API, hãy tạo một vòng lặp thông qua tất cả các nút của bạn, truy xuất các bản sửa đổi bằng cách sử dụng node_revision_list()
và xóa chúng bằng cách sử dụng node_revision_delete()
.
Như một phương sách cuối cùng và nếu bạn thích làm phiền với DB ( như tôi làm ), bạn có thể xóa các hàng field_revision_*
và bản sửa đổi của bản sửa đổi node_revision
. Thử đi:
CẢNH BÁO: hoàn toàn không được kiểm tra!
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
);
Bạn có thể tìm thấy danh sách đầy đủ các bảng sửa đổi của mình trong information_schema
cơ sở dữ liệu:
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME LIKE 'field_revision%'
AND TABLE_SCHEMA = 'your_database';