Twig nedir?

Atakan Savaş
2 min readOct 15, 2018

Hellö. Twig nedir, nerede kullanılır, nasıl çalışır diye merak ettiğimden bu yazıyı yazıyorum.

Twig nedir? (resmi sitesi)

Özetlemek gerekirse twig, bir template engine dir. (Template engine nedir diye diyorsanız google kullanabilirsiniz.) Php’de mvc mimarisi için kullanılan template engine’ler arasından bir tanesidir. Benim merak ettiğim nokta ise, php symfony framework twig ile default bağlantılı çalışıyor. Neden?

Öğrenebildiğim sebepler şöyle;

  • Twig öğrenmesi kolay, olgun ve sağlam bir template engine’dir.
  • Güçlü ve esnektir.
  • Portatiftir. Page template işlemlerini kolaylıkla gerçekleştirebilir.
  • Client side render işlemi yapar.
  • Forum desteği.
  • En büyük rakibi Blade template engine’dir. Ama twig forumlarda daha çok desteklenir ve tercih edilir. Çoğunluk bunu kullanır yani.
Başlıca motorların yüklenme süreleri

Basit kurallar

Twig temel olarak iki yazım kuralına sahip;

  • {{ write }} => write olarak belirttiğim yazım, süslü parantezler içinde yazdığınız değerin, html’e render edilmesini sağlar. Oraya ne yazarsanız yazın html içinde görünür.
  • {% do %} => do olarak belirttiğim yazım, bir kod bloğunu çalıştırmak içindir. Döngüler, If, Blocks yapıları gibi.

Mesela böyle yani. İki yazımı da gösteren güzel bir örnek.

Razor ile .cshtml içinde foreach döngüsü açıp nasıl kullanıyorsak, aynı mantığı burada kullanıyoruz. Sadece yazım farklı.

Unix Syntax

Bu arada şöyle bir mevzu var. Twig içinde unix syntax kullanıldığı için kodları ilk başta yazmak biraz zor geliyor. Ancak akıcı bir hale gelmesi için biraz pratik yapmanız yeterli. Mesela üstteki fotoğrafta, comments değişkeninin eleman sayısını aldık. Bunu da sayfaya yazdırdık. Böyle garip, tuhaf hoşluklar yani.

Twig hakkında temel bilgileri bu şekilde özetleyebilirim. Eyvole.

--

--