Рейтинг:0

Как редактировать метку описания файла и текст справки

флаг in

Я хочу отредактировать метку описания загрузки файла и справочное предложение под ней:

введите описание изображения здесь

Я попробовал следующий код:

function mymodule_field_widget_form_alter(&$element, FormStateInterface &$form_state, $context) {
  если (isset($element['#field_name'] == 'field_file_description') {
      // Добавляем обратный вызов процесса для изменения описания поля.
      $element['#process'][] = 'chg_desc';
    }
  }
}

функция chg_desc($element, FormStateInterface $form_state, $form) {
  $element['#description'] = t('Попытка редактирования справки по описанию');
  вернуть $элемент;
}

Это не влияет на метку поля и текст справки. Как их можно изменить?

Рейтинг:1
флаг bd

Я собираюсь предположить, что имя машины вашего поля файла field_file_description.

Согласно с ФайлВиджет.php#L414, описание является отдельным элементом формы, поэтому вместо $элемент['#описание'] должен быть $элемент['описание']['#описание']. Я только что проверил это, и это работает.

Вот пример рабочего кода:

function mymodule_field_widget_form_alter(&$element, FormStateInterface &$form_state, $context) {
  if (!array_key_exists('#field_name', $element)) {
    возвращаться;
  }
  if ($element['#field_name'] == 'field_file_description') {
    // Добавляем обратный вызов процесса для изменения описания поля.
    $element['#process'][] = 'mymodule_process_field_file_description';
  }
}

функция mymodule_process_field_file_description ($ элемент, FormStateInterface $ form_state, $ форма) {
  $element['description']['#title'] = t('Помощь!!!');
  $element['description']['#description'] = t('Попытка редактирования справки по описанию');
  вернуть $элемент;
}
флаг in
Большое спасибо за эту помощь. имя машины для моего поля было field_attachment. изменение этого, сработало волшебство для меня!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.