it-swarm-id.com

Buat revisi baru secara otomatis saat edit

Ketika sebuah node diedit saya ingin selalu membuat revisi baru. Saya tidak ingin orang dapat mematikan ini. Bagaimana saya bisa melakukan ini?

13
Lucy

Untuk mengaktifkan pembuatan revisi otomatis, buka halaman tipe konten (admin/konten/tipe-simpul) dan pilih edit untuk tipe konten apa pun yang Anda ingin revisi dibuat secara otomatis.

Di bawah bidang alur kerja, akan ada opsi "Buat revisi baru" pastikan Anda mencentang kotak itu dan menyimpan pengaturan jenis konten Anda.

Sekarang di bawah izin Anda (admin/pengguna/izin) pastikan untuk tidak memberi pengguna Anda izin "kelola node". Ini akan mencegah mereka menimpa opsi itu.

16
ericduran

Ada beberapa cara berbeda untuk melakukan ini, tetapi dengan asumsi Anda ingin melakukannya tanpa menonaktifkan izin administer nodes Untuk pengguna, mungkin cara termudah adalah dengan hanya mematikan akses ke Buat revisi bar = kotak centang dengan membuat modul khusus yang mengimplementasikan hook_form_alter():

function sandbox_form_alter(&$form, &$form_state, $form_id) {
  // Node forms have an ID of the form CONTENTTYPE_node_form: only modify those
  if (strstr($form_id, '_node_form') === FALSE) {
    return;
  }

  if (isset($form['revision_information'])) {
    $form['revision_information']['revision']['#access'] = FALSE;
  }
}

Dengan cara ini, pengguna tidak memiliki kemampuan untuk mengubah nilai default kotak centang, yang diatur pada halaman pengaturan untuk setiap jenis konten.

2
user7