W Drupal 6 możemy użyć PHP do ustawienia wartości domyślnych, ale ten sam kod nie może być użyty w Drupal 7.
Próbuję to zrobić hook_form_alter()
, ale kod nie działa.
function my_form_alter(&$form, &$form_state, $form_id) {
dsm($form);
switch($form_id) {
case 'accounts_node_form':
$form["field_accounts"]["und"]['#default_value'] = $default;
// …
break;
}
}
$form["field_accounts"]["und"][0]["value"]['#default_value'] = $default;
LANGUAGE_NONE
należy użyć wartości domyślnej$form['#entity']->language
ale musiałbym to sprawdzić, aby można go było użyć zamiast stałej. użyłby również obecnego języka określonego przez$language
globalny, ale i tak istnieją metody API (field_get_items
lub nawet lepszeEntityMetadataWrapper
dostarczone przez moduł encji)To poprawne:
źródło
Działa to dobrze:
źródło