Utwórz nową wersję automatycznie podczas edycji

13

Podczas edytowania węzła chcę zawsze tworzyć nową wersję. Nie chcę, żeby ludzie mogli to wyłączyć. W jaki sposób mogę to zrobić?

Lucy
źródło
admin / content / node-type / [node-type] spójrz na
zestaw pól

Odpowiedzi:

16

Aby włączyć automatyczne tworzenie poprawek, przejdź do strony typu zawartości (admin / content / node-type) i wybierz edytuj dla dowolnego typu zawartości, który chcesz, aby wersja była tworzona automatycznie.

W zestawie pól przepływu pracy będzie opcja „Utwórz nową wersję”. Upewnij się, że zaznaczyłeś to pole i zapisałeś ustawienia typu zawartości.

Teraz na podstawie twoich uprawnień (admin / user / permissions) pamiętaj, aby nie udzielać użytkownikom uprawnień do „administrowania węzłami”. Zapobiegnie to zastąpieniu tej opcji.

ericduran
źródło
Czy dotyczy to tylko drupala 6?
Sam152
Działa to również w przypadku D7. Sprawdź także moduł rewizji , który pozwala kontrolować przepływ pracy.
Aram Boyajyan
2

Można to zrobić na kilka różnych sposobów, ale zakładając, że chcesz to zrobić bez wyłączania administer nodesuprawnień dla użytkowników, prawdopodobnie najłatwiej jest po prostu wyłączyć dostęp do pola wyboru Utwórz nową wersję , tworząc niestandardowy moduł, który implementuje 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;
  }
}

W ten sposób użytkownicy nie mają możliwości zmiany domyślnej wartości pola wyboru, które jest ustawione na stronie ustawień dla każdego typu zawartości.


źródło