Beim Erstellen eines neuen Knotens habe ich dieses Feld mit unbegrenzten Werten mit der Schaltfläche "Neues Element hinzufügen".
Das ist in Ordnung, wunderbar. Wenn ich jedoch einen vorhandenen Knoten bearbeite, erhalte ich einen unerwünschten leeren zusätzlichen Mehrwert für mich:
Mein wirklicher Fall ist ein großes zusammengesetztes Feld, aber ich dachte, dieses kleine Feld als Beispiel zu verwenden, wäre leichter zu verstehen.
Gibt es eine Möglichkeit zu verhindern, dass dieses "zusätzliche" Feld aufdringlich hinzugefügt wird?
Antworten:
Dies würde für alle Knotenbearbeitungsformulare funktionieren:
quelle
$form[$field_name][$field_language][$max_delta + 1] = $form[$field_name][$field_language][$max_delta];
könnte funktionieren.Dies würde für alle Knotenbearbeitungsformulare funktionieren, ohne die Feldnamen anzugeben.
quelle
if ($max_delta > 0) { unset($form[$field_name][$field_language][$max_delta]); }
Sie können Ihr eigenes Modul mit einem hook_form_FORM_ID_alter schreiben , um das unerwünschte Feld zu entfernen. Etwas wie...
quelle
Wenn dies aus Backend-Sicht derzeit nicht möglich ist, könnte eine Alternative die folgende Jquery sein. Dieser Code entfernt nur das erste Ziel, wenn die Seite geladen wird, und entfernt das Ziel nur, wenn der Benutzer Dateien hinzufügt, sodass Sie keine Probleme haben, wenn Sie bereits Dateien haben:
(vor das
body
schließende Tag Ihrer page.tpl.php setzen)Nach meinem Test werden die Bilder ohne Probleme hochgeladen, und wenn Sie den Knoten bearbeiten, werden alle Dateien aufgelistet.
Hinweis: In diesem Beispiel ist 'field_test_file' der Name des CCK-Felds. Denken Sie also daran, den Namen Ihres cck-Felds zu ändern.
quelle