Liquid Template Language Nedir? Nasıl Kullanılır?

Güncelleme Yayın

E-ticaret üzerine başlangıç niteliğindeki E-Commerce (E-Ticaret) Nedir? ve E-Ticarette İlk Adım, Ya Sonra? gibi yazıların yanı sıra, PrestaShop, WooCommerce, Magento gibi uygulamaların da bahsi geçti. Elbette her uygulama ve/ya servis kendi ortamı, ilişkileri ve çerçevesi bağlamında değerlendirilmeli. Bu amaçla da Twig, Mustache.js gibi şablon dillerinden / motorlarından ve Ürün Bilgi Yönetimi (PIM) Nedir? gibi entegrasyonlardan da bahsettik. Bu yazımızın konusu Liquid Templata Language ise Shopify ile hayata geçirilmiş ancak sonrasında bağımsız olarak da kullanılabilen bir şablon dili. Ancak, detaylara geçmeden önce Shopify ile ilgili temel bir açıklama düşmekte fayda var.

Shopify Nedir

Shopify, merkezi Ottawa (Kanada), Ontario’da bulunan bir çokuluslu e-ticaret şirketi olmasının yanı sıra aynı zamanda çevrimiçi mağazalar ve perakende satış noktası sistemleri çözümleri sunan e-ticaret platformunun adıdır. Daha detaylı bilgi almak ve örnekler görmek için Examples ve E-commerce Stores sayfalarını inceleyebilirsiniz. Gelelim Liquid‘e.

Liquid Templata Language

Görsel: Liquid – The Template Language for Shopify

Liquid Templata Language

Liquid, Shopify kurucu ortağı ve CEO Tobias Lütke tarafından adımları atılan ve Ruby ile geliştirilen açık kaynaklı bir şablon dilidir. Shopify sistemiyle entegre geliştirilen temaların belkemiği olarak da bu şablon dili kullanılmaktadır. Bu sayede mağaza içi etkileşimler dinamik bir şekilde ve kayda değer bir performans ile yürütülür. Temelleri Shopify ile atılmış olmasına karşın günümüzde Zendesk, Desk.com, Jekyll, 500px, GoDaddy gibi farklı ölçeklerde daha pek çok servis/uygulama tarafından da kullanılmaktadır.

Destek

Shopify Tema Geliştirme ile ilgili desteğe mi ihtiyacın var? Geliştirme ve ilgili diğer konular için destek talebinde bulunabilirsin.

Liquid kaynak kodu ve güncellemeler ile ilgili olarak GitHub @Shopify/liquid sayfasını inceleyebilirsiniz. Kişisel gözlemlerim Liquid’in Twig‘e oldukça benzediği yönünde. Dolayısıyla twig yazım kurallarına aşina iseniz ve/ya Grav temaları hazırlıyorsanız kolaylıkla Shopify temelinde temalar hazırlayabilirsiniz. Şablon geliştirme kuralları ile ilgili olarak ayrıca şu yazılara göz atmanız faydalı olacaktır.

Liquid Kullanımı

Liquid kodları nesneler, etiketler ve filtreler altında kategorilendirilebilir.

Nesneler (Objects)

Nesneler, Liquid’e sayfa içerisinde içeriğin nerelerde gösterileceğini söyler. Nesneler ve değişken adları çift süslü parantez {{...}} içerisinde gösterilir.

{{ page.title }}

Etiketler (Tags)

Etiketler, şablonlar için mantık ve kontrol akışılarının oluşturulması amacıyla kullanılır. Süslü parantez ve yüzde işaretleri ile ifade edilirler: {%...%}

{% if user %}
  Hello {{ user.name }}!
{% endif %}

Daha detaylı bilgi ve örnek kullanımlar için iteration, control flow ve variable alt bölümlerini inceleyebilirsiniz.

Filtreler (Filters)

Filtreler bir Liquid nesnesinin çıktısını müdahale etme imkanı sunar ve pipe akışı | ile Liguid çıktısına iliştirilir.

{{ "adam!" | capitalize | prepend: "Hello " }}

date, divided_by, escape, join, remove, replace ve where gibi kullanıma hazır filtreler için Liquid Introduction sayfasını inceleyebilirsiniz.


İleri Okumalar
Kaynakça
  1. An Overview of Liquid: Shopify’s Templating Language
  2. Liquid template language reference
  3. Twilio Docs, Liquid Template Language
  4. Jekyll, Liquid
  5. meta::cpan, Template::Liquid
  6. SendOwl, Liquid Templating