λΈλ‘ μ΄λ¦μ varsλ₯Ό μ¬μ©νλ©΄ μλνμ§ μμ΅λλ€.
{% set block_name = "my_block_name" %}
{% λΈλ‘ λΈλ‘ μ΄λ¦ %}
μΌλΆ html ...
{% μλλΈλ‘ %}
block_name
'block_name'
λ¬Έμμ΄λ‘ νμλκΈ° λλ¬Έμ
μ£μ‘ν©λλ€. λλκ°μ§λ‘ λμ λΈλ‘μ κ°μ§ μ μλ€κ±°λ μλͺ»λ λ°©μμΌλ‘ μ¬μ©νκ³ μλ€λ λ§μμ΄μ κ°μ?
λΉμ λ§μ΄ λ§μ, λμ λΈλ‘ μ΄λ¦μ΄ μμ΅λλ€
λμ λΈλ‘μ μ¬μ©ν μ μμ΅λλ€. Twig μ¬μ©μ λ©μΌλ§ 리μ€νΈμ μ¬μ© μ¬λ‘λ₯Ό κ²μνμμμ€.
μ½λμΌμ΄μ€ μ΄μ΄μ μ£μ‘ν©λλ€^^. λμ λΈλ‘ μ΄λ¦μ μ΄μ μ μ»μ μ μλ μ¬μ© μ¬λ‘λ₯Ό μ νμ μλ μμ΅λλ€.
λ¨μΌ ν μ΄λΈ μμκ³Ό ν¨κ» Doctrineμ μ¬μ©ν©λλ€(κΈ°λ³Έ μΆμ ν΄λμ€ = Article, News + Faqλ Article νμ₯).
κ·Έλ° λ€μ News λ° Faqλ₯Ό λ§λ€ μ μλ μμ ν΄λμ€λ₯Ό λ§λ€μμ΅λλ€. κ·Έλ¬λ λͺ¨λ μμμ λμΌν λλκ°μ§ ν νλ¦Ώμ μ¬μ©ν©λλ€. κ·Έλ° λ€μ μ¬κΈ°μ μ€λͺ λ λλ‘ νλ ν νλ¦Ώ(μ: article.product)μ μ¬μ©μ μ§μ ν΄μΌ νμ΅λλ€.
λ¬Έμ λ μ΄λ€ νμμ μ¬μ©νλλμ λ°λΌ νλμ μ΄λ¦μ΄ λ¬λΌμ§λ€λ μ μ΄λ€. μ΄λ¦μ news_product λλ faq_productμ΄λ―λ‘ λ°λ³΅μ νΌνκΈ° μν΄ λ€μκ³Ό κ°μ΄ μμ νλλ₯Ό μ¬μ©μ μ μν μ μμΌλ©΄ νΈλ¦¬ν©λλ€.
{%- block '_'~type~'_product_widget' -%}
...
{% endblock %}
μ½κ°μ μ‘°μ¬ ν getBlockPrefixλ₯Ό μ¬μ©νμ¬ λ€λ₯Έ μμ μ ν ν΄λμ€μμ μμμ μ λμ¬λ₯Ό κ°μ λ‘ μ μ©νμ¬ μ΄ λ¬Έμ λ₯Ό ν΄κ²°νμ¬ λͺ¨λ μμμ΄ λμΌν νλ μ΄λ¦μ κ°κ² λλ©° κ°λ¨ν article_productλ₯Ό μ¬μ©μ μ μν μ μμ΅λλ€.
public function getBlockPrefix(){
return 'article';
}
κ·Έλμ λκ΅°κ°μκ² λμμ΄ λ μ μλ μ΄ μ¬μ© μ¬λ‘λ₯Ό λ¬Έμννκ³ μΆμμ΅λλ€...
λΈλ‘ μ΄λ¦μ ν
νλ¦Ώ ꡬ쑰μ μΌλΆμ΄λ―λ‘ μ»΄νμΌ μκ°μ μλ €μΌ ν©λλ€.
λ³μλ λ°νμμλ§ μ μ μμ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
λΈλ‘ μ΄λ¦μ ν νλ¦Ώ ꡬ쑰μ μΌλΆμ΄λ―λ‘ μ»΄νμΌ μκ°μ μλ €μΌ ν©λλ€.
λ³μλ λ°νμμλ§ μ μ μμ΅λλ€.