Я использую PHP и Twig для приложения, в котором я хочу иметь согласованные входные данные для формы по всему сайту, которые все отображаются в одном месте кода.
То есть я хочу, чтобы вся разметка генерации ввода формы находилась в одном месте, поэтому если / когда я захочу внести изменения в то, как выглядят и функционируют входы формы на всем сайте, я могу изменить одну вещь в одном месте и иметь это действует везде.
Какой лучший способ сделать это с помощью Twig?
Спасибо.
Используйте веточку macro
https://twig.symfony.com/doc/2.x/tags/macro.html
forms.html:
{% macro input(name, value, type, size) %}
<input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
{% endmacro %}
использование:
{% import "forms.html" as forms %}
<p>{{ forms.input('password', null, 'password') }}</p>
Других решений пока нет …