public function InlineParagraphsWidget::form in Paragraphs 8
Creates a form element for a field.
If the entity associated with the form is new (i.e., $entity->isNew() is TRUE), the 'default value', if any, is pre-populated. Also allows other modules to alter the form element by implementing their own hooks.
Parameters
\Drupal\Core\Field\FieldItemListInterface $items: An array of the field values. When creating a new entity this may be NULL or an empty array to use default values.
array $form: An array representing the form that the editing element will be attached to.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
int $get_delta: Used to get only a specific delta value of a multiple value field.
Return value
array The form element array created for this field.
Overrides WidgetBase::form
File
- src/
Plugin/ Field/ FieldWidget/ InlineParagraphsWidget.php, line 945
Class
- InlineParagraphsWidget
- Plugin implementation of the 'entity_reference paragraphs' widget.
Namespace
Drupal\paragraphs\Plugin\Field\FieldWidgetCode
public function form(FieldItemListInterface $items, array &$form, FormStateInterface $form_state, $get_delta = NULL) {
$parents = $form['#parents'];
// Identify the manage field settings default value form.
if (in_array('default_value_input', $parents, TRUE)) {
// Since the entity is not reusable neither cloneable, having a default
// value is not supported.
return [
'#markup' => $this
->t('No widget available for: %label.', [
'%label' => $items
->getFieldDefinition()
->getLabel(),
]),
];
}
$elements = parent::form($items, $form, $form_state, $get_delta);
// Signal to content_translation that this field should be treated as
// multilingual and not be hidden, see
// \Drupal\content_translation\ContentTranslationHandler::entityFormSharedElements().
$elements['#multilingual'] = TRUE;
return $elements;
}