Same name and namespace in other branches
  1. 8.9.x core/includes/form.inc \template_preprocess_select()
  2. 9 core/includes/form.inc \template_preprocess_select()

Prepares variables for select element templates.

Default template: select.html.twig.

It is possible to group options together; to do this, change the format of the #options property to an associative array in which the keys are group labels, and the values are associative arrays in the normal #options format.

Parameters

$variables: An associative array containing:

  • element: An associative array containing the properties of the element. Properties used: #title, #value, #options, #description, #extra, #multiple, #required, #name, #attributes, #size, #sort_options, #sort_start.

File

core/includes/form.inc, line 33
Functions for form and batch generation and processing.

Code

function template_preprocess_select(&$variables) {
  $element = $variables['element'];
  Element::setAttributes($element, [
    'id',
    'name',
    'size',
  ]);
  RenderElementBase::setAttributes($element, [
    'form-select',
  ]);
  $variables['attributes'] = $element['#attributes'];
  $variables['options'] = form_select_options($element);
}