Drupal → Перенести определённый виджет параграфа в вкладку "Behavior"

05.06.2024

При редактировании параграфов часто хочется перенести виджет какого-нибудь поля в вкладку "Behavior", чтобы он не мозолил глаза, например виджет поля "Статус публикации". Решение:

/**
 * Implements hook_field_widget_single_element_WIDGET_TYPE_form_alter(): paragraphs.
 */
function MODULENAME_field_widget_single_element_paragraphs_form_alter(array &$element, FormStateInterface $form_state, array $context): void {
  $field_name = 'status';
  if (isset($element['subform'][$field_name])) {
    $element['behavior_plugins'][$field_name] = $element['subform'][$field_name];
    $element['behavior_plugins'][$field_name]['#attributes']['class'][] = 'paragraphs-behavior';
    unset($element['subform'][$field_name]);
  }
}

Результат:

Написанное актуально для
Paragraphs 8.x-1.x
Похожие записи

Добавить комментарий