Я пытаюсь создать предложение формы drupal, используя:
function pfe_theme_suggestions_form_alter(array &$suggestions, array $variables) {
$suggestions[] = 'form__'. $variables['element']['#id'];
}
, но после создания формы - user-login-form.html.twig , drupal не делает 'Этот шаблон не принимается во внимание, но он всегда использует form.html.twig .
Это html-комментарий:
<!-- THEME DEBUG -->
<!-- THEME HOOK: 'form' -->
<!-- FILE NAME SUGGESTIONS:
* form--user-login-form.html.twig
x form.html.twig
-->
<!-- BEGIN OUTPUT from 'core/themes/stable/templates/form/form.html.twig' -->
После добавления HOOK_theme ():
function pfe_theme_suggestions_form_alter(array &$suggestions, array $variables) {
$suggestions[] = 'form__'.$variables['element']['#id']; //form--user-login-form.html.twig
}
function pfe_theme($existing, $type, $theme, $path) {
return [
'form__user-login-form' => [
'#theme' => 'form--user-login-form',
'render element' => 'form',
],
];
}
Я получаю эту ошибку:
Twig_Error_Loader: шаблон "themes / pfe / templates / form - user-login-form.html.twig" не определен (Drupal \ Core\ Template \ Loader \ ThemeRegistryLoader: не удается найти шаблон "themes / pfe / templates / form - user-login-form.html.twig" в реестре тем Drupal.).в Twig_Loader_Chain-> getCacheKey () (строка 43 из /home/marwen/workspace/pfe/themes/pfe/templates/block/block--userlogin.html.twig).