Соглашение об именах Twig для веб-форм - PullRequest
0 голосов
/ 22 мая 2019

Я использую Drupal 8. У меня есть веб-форма с именем careers_application (имя машины). Мне нужно создать шаблон ветки для него. Я пытался использовать webform-submission-form-careeers_application.html.twig, но это не имеет никакого смысла для веб-формы вообще.

1 Ответ

0 голосов
/ 22 мая 2019

Используя hook_theme_suggestions_alter, вы можете создавать любые предложения шаблонов, которые вам нравятся. Например:

function Yourtheme_theme_suggestions_alter(array &$suggestions, array $variables, $hook) {

  if ($hook == 'form' & !empty($variables['element']['#id'])) {
    $suggestions[] = 'form__' . str_replace('-', '_', $variables['element']['#id']);
  }
}

, тогда вы будете создавать шаблоны в своей теме, такие как

form--user-register-form.html.twig

или

form--webform-submission-form-careeers-application.html.twig

Вы можете просто использовать предложения, и они сделают все остальное после очистки кеша.Вы можете визуализировать ваши элементы в шаблоне.

Например:

<form{{ attributes }}>
  {{ element }}
</form>

Вложения:

...