У меня есть веб-сайт с основной темой и другой «мини-темой», которая используется через пользовательский модуль с переговорщиком темы, определяемым типом узла. Страницы, использующие мини-тему, включают веб-форму в блоке.
Страницы мини-темы, кажется, отображаются правильно, включая веб-форму, но во многих случаях после заполнения формы представление не отправляется (не выполнен вход в таблицы и нет подтверждения).
Есть несколько страниц, использующих эту тему, в одной это происходит как бы непоследовательно (иногда форма отправляется, а иногда нет) и во всех остальных случаях последовательно - отправляется только если я обновляю страницу (CTRL+F5), иначе не отправляется .
Веб-формы на основном сайте отправляются без проблем.
Эта проблема началась после обновления до Drupal 9 и использования Webform 6.1.0.
Мой код ниже. Любая помощь будет высоко оценен! Спасибо :)
Код темы:
Это код, используемый для блока, расположенного в моем файле темы:
функция minitheme_preprocess_page(&$variables) {
//код формы
$form_block_id = 'веб-форма_8';
$block = \Drupal\block\Entity\Block::load($form_block_id);
$variables['short_contact'] = \Drupal::entityTypeManager()
->getViewBuilder('блок')
-> вид ($ блок);
}
А затем добавил в page.html.twig:
{{ короткий_контакт }}
Код модуля:
А это файл сервисов:
# Файл служб модуля change_theme.services.yml
Сервисы:
change_theme.theme.negotiator:
класс: Drupal\change_theme\Theme\ThemeNegotiator
теги:
- {имя: theme_negotiator, приоритет: 1000}