Créer automatiquement une nouvelle révision lors de la modification

13

Lorsqu'un nœud est modifié, je veux toujours créer une nouvelle révision. Je ne veux pas que les gens puissent désactiver cela. Comment puis-je faire ceci?

Lucy
la source
admin / content / node-type / [node-type] regardez le jeu de champs 'Process'
dobeerman

Réponses:

16

Pour activer la création de révision automatique, accédez à la page de type de contenu (admin / content / type de nœud) et sélectionnez modifier pour le type de contenu que vous souhaitez que la révision soit créée automatiquement.

Sous le champ de flux de travail, il y aura une option "Créer une nouvelle révision" assurez-vous de cocher cette case et d'enregistrer vos paramètres de type de contenu.

Maintenant, sous vos autorisations (admin / utilisateur / autorisations), assurez-vous de ne pas donner à vos utilisateurs l'autorisation "administrer les nœuds". Cela les empêchera d'écraser cette option.

ericduran
la source
Est-ce uniquement pour Drupal 6?
Sam152
Cela fonctionne également pour D7. Vérifiez également le module de révision , qui permet de contrôler le flux de travail.
Aram Boyajyan
2

Il existe plusieurs façons de procéder, mais en supposant que vous souhaitiez le faire sans désactiver les administer nodesautorisations pour les utilisateurs, le moyen le plus simple consiste probablement à désactiver l'accès à la case à cocher Créer une nouvelle révision en créant un module personnalisé qui implémente 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;
  }
}

De cette façon, les utilisateurs n'ont pas la possibilité de modifier la valeur par défaut de la case à cocher, qui est définie sur la page des paramètres pour chaque type de contenu.


la source