Мне нужно создать темы для всех страниц терминов, используя один шаблон для всех из них. Я пытаюсь это сделать, и создаю таксономию-term.html.twig, очищаю кеш, но это не работает. Что я должен сделать? Теперь я нашел это (https://drupal.stackexchange.com/questions/217850/how-to-make-page-html-twig-based-on-vocabulary), но это для тематики каждого термина отдельно. Я думаю, мне нужен тот же код, но один файл для всех терминов.
Вероятно, вы поместили файл taxonomy-term.html.twig
в каталог, где Drupal его не ищет. Посмотрите https://www.drupal.org/docs/8/theming-drupal-8/drupal-8-theme-folder-structure, чтобы узнать больше о разрешенных местах.
Если вы включите отладку twig, вы сможете увидеть, какой файл загружает Drupal. Вы можете подписаться на эту страницу: https://befused.com/drupal/twig-debug. По сути, после включения отладки просмотрите исходный код вашего сайта через браузер. Twig добавил HTML-комментарии к файлам, которые он искал и которые загружал.
Чтобы упростить создание тем, я настоятельно рекомендую отключить кеш рендеринга. Из https://www.drupal.org/node/1903374:
To disable the render cache, add the following lines to either: settings.php, taking care not to add it to your production site or settings.local.php, by uncommenting the lines at the bottom of your settings.php first. These lines are:
$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';
$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';
Drupal 8 по умолчанию использует модуль Views для отображения терминов таксономии.
Чтобы обойти это, просто отключите представление с именем Термин таксономии (machine name: taxonomy_term
).
После отключения Drupal 8 будет отображать каждую страницу терминов таксономии с помощью taxonomy-term.html.twig
.
Спасибо. Однако по умолчанию Drupal 8 использует представления (<!для визуализации таксономии -- НАЧНИТЕ ВЫВОД из 'core/themes/stable/templates/views/views-view.html.twig' -->) Могу ли я как-то переключить это на таксономия-term.html.twig? Я помещаю этот файл в каталог темы и вставляю код из примера здесь api.drupal.org/api/drupal/…