Вложение веток несколько раз - PullRequest
0 голосов
/ 13 мая 2019

Я пытаюсь найти правильный способ создания компонента Twig, в котором есть разделы с глубиной вложенности 3.

У меня есть файл Twig, который просто создает заголовок с классом:

header.twig

<h2>{% block content %}{% endblock %}</h2>

, а затем файл ветки среднего уровня, который использует этот заголовок вместе с другими ветками низкого уровня:

раздел.twig

<div class="section">
    {% block header %}
        {% embed "components/header.twig" %}
            {% block content %}
                {{ header }}
            {% endblock %}
        {% endembed %}
    {% endblock %}
</div>

и, наконец, высокоуровневый компонент страницы, потребляющий ветку раздела:

page.twig

<div class="page">
    {{ include("mid/section.twig", { header: fields.header }) }}
</div>

Теперь, как вы можете видеть в section.twig, я могу переопределить созданный мной блок, но на самом высоком уровне page.twig Я не могу переопределить блок дважды, поэтому мне нужно использовать включение вместо встраивания.

Для меня это не правильно и очень многословно.Чтобы уточнить, я использую ACF, так что отсюда и fields.header, и да, я знаю, что header.twig может напрямую обращаться к этому значению, но я пытаюсь создать структуру, в которой компоненты низкого и среднего уровня являются "тупыми" иКомпонент высокого уровня контролирует данные.

Для моей конкретной ситуации я собираюсь сделать это наилучшим способом, которым я могу, или есть другой более чистый способ, который не включает в себя встраивание и включает в себя?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...