CKK "unbegrenzt" Field
am 23.03.2011 - 11:29 Uhr in
Kann man bei CKK einstellen wie viele Felder angezeigt werden soll wenn man im Feld einstellt das unbegrenzt werte eingegeben werden ? im Moment zeigt er 4 Felder an wenn ich das Feld auf unbegrenzt stelle ... ich möchte ger naber nur 1 anzeigen. Wie kann man das machen ? CKK verändern oder andere möglichkeiten ????
Gruß hacky
- Anmelden oder Registrieren um Kommentare zu schreiben

Normalerweise stellt er alle
am 23.03.2011 - 18:21 Uhr
Normalerweise stellt er alle Felder dar, die Inhalt haben. Deine 4 wundern mich da ein wenig. Wenn Du nur eins angezeigt haben willst, geht das über ein Template für diesen Node-Typ, das Du dann erstellen mußt. Aber warum setzt Du auf unbegrenzt, wenn nur eins angezeigt werden soll? Das erschließt sich mir nicht so recht.
Beste Grüße
Werner
Patch
am 23.03.2011 - 19:31 Uhr
Hallo.
Schau mal hier: http://drupal.org/node/320313#comment-3817766
Du kannst also entweder CCK patchen oder das Verhalten mit ungefähr diesem Code ändern:
<?php/**
* Implementation of hook_form_alter().
*/
function cckfix_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'testtype_node_form') {
$field_names = array(
'field_dingens',
);
// Remove empty form element for these fields.
foreach ($field_names as $field_name) {
$field =& $form[$field_name];
$children = element_children($field);
// Values are hold in every delta item.
$values = $form[$field_name][0]['#default_value'];
foreach ($children as $key) {
// First element should always be present.
if (is_numeric($key) && $key !== 0) {
// Remove empty values as they can be added manually by clicking the add more button.
$field_value = $form[$field_name][$key];
if (empty($field_value['#default_value']) || !isset($field_value['#default_value']['nid'])) {
unset($form[$field_name][$key]);
// Set flag that we removed unneeded deltas.
$form[$field_name]['#deltas_removed'] = TRUE;
}
}
}
}
}
}
?>
So in etwa könnte das funktionieren.
@wla: Wenn Du ein Feld mit "Number of values: unlimited" einstellst, werden initial 2 leere Felder beim Erstellen eines Nodes angezeigt. Das stört.
Stefan
@stBorchert Ich hatte das
am 23.03.2011 - 22:30 Uhr
@stBorchert
Ich hatte das Problem gar nicht verstanden. Ich dachte es ging um die Anzeige und nicht um die Eingabe. Danke für den Code, manchmal braucht man so was doch.
Beste Grüße
Werner
Wie mach ich das genau wenn
am 24.03.2011 - 19:09 Uhr
Wie mach ich das genau wenn ich das verhalten ändern will? wo füge ich den Code an ?
Gruß Hacky
könnte man auch verhindern
am 24.03.2011 - 19:11 Uhr
könnte man auch verhindern das VBO einen override macht auf unlimted fields ? wenn ich ein Node üver VBO editiere und ich das erste Feld ausfülle macht er ein Override ... das ist irgendwie nicht sinn der sache ^^
Gruß Hacky
Sorry war evtl. nicht ganz so
am 24.03.2011 - 19:12 Uhr
Sorry war evtl. nicht ganz so gut erklärt von mir.
trotzdem danke.!