Markierung für Formular-Pflichtfelder (Sternchen) ändern

veröffentlicht von gngn am Sam, 02.05.2015 - 10:27

Falls es mal nicht das netz-übliche Sternchen * sein soll, dass dein User_innen auf Pflichtfelder hinweist, sondern z.b. zwei Sternchen ** - dafür gibt es natürlich einen hook (was sonst?): hook_form_required_marker().

Einfach in template.php (des aktiviven Themes) hook_form_required_marker() implementieren:

function MYTHEME_form_required_marker($variables) {
  // This is also used in the installer, pre-database setup.
  $t = get_t();
  $attributes = array(
    'class' => 'form-required',
    'title' => $t('This field is required.'),
  );
  // gewuenschtes zeichen/text/... setzen - hier '**'
  return '<span' . drupal_attributes($attributes) . '>**</span>';
}

Du könntest sogar $variables untersuchen und unterschiedliche Markierungen abhängig vom Feld, Feld-Typen, etc. liefern.
So enthält

  • $variables['element']['#entity_type']: Typ, z.b. 'node'
  • $variables['element']['#entity']->type: bei Node-Forms den content-type
  • $variables['element']['#type']: Feld-Typ, z.B. 'select' oder 'textfield'
  • $variables['element']['#id']: Feld-ID, z.B. 'edit-field-MYFIELD-und'
  • $variables['element']['#name']: Feld-Name, z.B. 'field_MYFIELD[und]'

Neuen Kommentar hinzufügen