Wie kann ich ein Feld beim Erstellen eines Knotens ausblenden, aber beim Bearbeiten eines Modus anzeigen?
11
Wenn ich Ihre Frage verstehe, können Sie ein benutzerdefiniertes Modul verwenden (in diesem Beispiel lautet der Name des Moduls test_remove_field
) und den folgenden Code einschließen:
function test_remove_field_form_alter(&$form, &$form_state) {
if (arg(0) == 'node' && arg(1) == 'add') {
$form['field_test']['#access'] = 0;
}
}
Hinweis: Denken Sie daran, dass field_test
dies Ihr jeweiliger Feldname sein muss.
Mit dem Modul Feldberechtigungen können Sie Berechtigungen auf Feldebene festlegen:
Mit diesen Optionen können Sie die rollenbasierte Berechtigung für ein Feld aktivieren.
Feldberechtigungen
quelle
Ich würde hook_form_alter () verwenden und die
['#access']
Eigenschaft auf setzenFALSE
so dass sie der Antwort von @ moon.watcher entspricht.Wenn Sie in Drupal 6 sind, benötigen Sie dazu ein Modul. In Drupal 7 können Sie hook_form_alter () aus Ihrer Vorlage aufrufen .
quelle
Dies ist ein Anwendungsfall für das Rules Form Support-Modul - https://www.drupal.org/project/rules_forms .
Features sind:
quelle
Sie können das Formular zum Hinzufügen / Bearbeiten von Knoten mit Bedienfeldseiten übernehmen. Mit dieser Option können Sie auswählen, was Sie auf dem Formular wünschen.
quelle