Sementara revisi disimpan dan mudah untuk kembali ke revisi node sebelumnya, saya bertanya-tanya apakah mungkin untuk mengembalikan node yang benar-benar telah dihapus oleh pengguna?
18
Jika Anda memiliki cadangan basis data (yang seharusnya;) Anda dapat mengembalikan salinan situs yang lama dan mengambilnya seperti itu.
Drupal memberikan peringatan yang jelas kepada pengguna bahwa menghapus suatu simpul adalah final, dan ada dialog konfirmasi.
Apa kata Chris. Kode berbunyi
db_query('DELETE FROM {node} WHERE nid = %d', $node->nid);
db_query('DELETE FROM {node_revisions} WHERE nid = %d', $node->nid);
... jadi dihapus benar-benar berarti dihapus.
Untuk mencegah kecelakaan seperti ini, Anda mungkin ingin membatasi izin pengguna sehingga pengguna tidak dapat menghapus, tetapi hanya membatalkan publikasi node. Node yang tidak diterbitkan tidak akan muncul di situs Anda (dengan anggapan bahwa situs Anda dibuat dengan benar) tetapi mereka tetap tersedia dalam database.
Ya ada beberapa solusi untuk ini.
sumber
Berikut adalah saran yang membangun tentang apa yang dikatakan Chris sebagai jawaban reverse engineer @ marcvangend. Saya suka menggunakan phpMyAdmin, tetapi Anda dapat melakukan proses yang sama dengan baris perintah jika Anda suka itu lebih baik.
Seperti jawaban lainnya, ini mengasumsikan Anda memiliki cadangan dari database Anda. Tidak ada alasan untuk tidak menggunakan modul yang luar biasa seperti Backup & Migrate di luar sana.
node
tabel, cari simpul yang dihapus. Semoga Anda tahu nid, tetapi jika Anda tidak mengetahuinya sekarang.node_revisions
meja. Cari di ujung simpul yang dihapus dan ekspor. Setidaknya harus ada satu baris, tetapi bisa lebih. Ekspor semuanya dengan id Anda.Dengan menggunakan metode ini, Anda dapat memulihkan satu simpul dari cadangan tanpa kehilangan perubahan apa pun pada basis data sejak cadangan terakhir. Jika Anda tidak khawatir tentang itu dan Anda tidak memikirkan apa pun kecuali penghapusan telah terjadi sejak cadangan terakhir, akan lebih mudah untuk hanya melakukan pemulihan penuh dari cadangan terakhir untuk menjalani proses di atas.
sumber
node
meja dan tidak melihat nid yang dihapus di sana? Apakah ini berarti segala sesuatu tampak suram? Omong-omong, situs ini adalah Drupal 8.Saya setuju, tetapi jawabannya adalah menggunakan modul cadangan entitas https://www.drupal.org/project/entity_backup
sumber