Składnia języka Liquid
Rodzaje znaczników
Składnia silnika Liquid zawiera dwa typy znaczników. Znacznik wypisujący dane oraz znacznik sterujący.
Znacznik wypisujący dane stosowany jest do wypisywania wartości zmiennych lub wyrażeń, również z zastosowaniem filtrów.
0 1 2 3 |
{{customer.Email}} {{customer.Email | Upcase}} |
Filtry mogą przyjmować parametry, które podawane są wewnątrz znaczników wypisujących.
0 1 2 3 |
{{3 | Plus: 3}} {{3 | Plus: 3 | Minus: 2}} |
Drugi typ znacznika jest stosowany dla operacji sterujących, m.in. instrukcji warunkowych, pętli itp.
0 1 2 3 4 5 6 7 |
{% if customer.Authenticated -%} Gratuluję! Masz tutaj dostęp {% endif -%} {% unless customer.Company %} Nie jesteś firmą {% endunless %} |
Instrukcje sterujące dodają do kodu HTML oraz CSS logikę charakterystyczną dla języków programowania. Wzbogacają statyczny kod strony o zmienne, instrukcje warunkowe, pętle oraz wstawki zewnętrznego fragmentu kodu. Obiekty zawierają wszystkie dane sklepu internetowego. Można w nich znaleźć informacje dotyczące produktów, kategorii, konfiguracji sklepu oraz szablonu, a także dane klienta sklepu. Filtry służą do formatowania danych oraz operacji arytmetycznych. Są używane w połączeniu z obiektami, aby zmienić sposób wyświetlania otrzymanych danych.
Interfejs komunikuje się ze sklepem za pomocą akcji. Akcje aktualizują informacje w bazie danych oraz dane sesyjne. Można je zaimplementować za pomocą formularzy lub z użyciem zapytań AJAX. Proste logowanie utworzone za pomocą formularza
Proste logowanie napisane z użyciem zapytania AJAX
Oprócz pól wymaganych przez akcję, każde zapytanie na serwer może zawierać parametry: W odpowiedzi otrzymamy obiekt o parametrach: Parametr action może zawierać m.in. informacje o powodzeniu akcji, ewentualnym przekierowaniu oraz o rezultacie walidacji po stronie serwera. Dla przykładu, można następująco zmodyfikować skrypt odpowiedzialny za obsługę logowania:
Rezultat operacji w przypadku niepoprawnych danych wyglądać będzie następująco:
Natomiast zapytanie z poprawnymi danymi zrwóci:
Za pomocą jednego zapytania można pobrać wiele obiektów, oddzielając je znakami |. Nie zaleca się stosowania spacji między znakami, ponieważ znajdą się one w nazwie obiektów, co może generować niespodziewane błędy.
Operatory
=
przypisanie
==
równy
>
większy
>=
większy lub równy
<
mniejszy
<=
mniejszy lub równy
and
koniunkcja
or
alternatywa
!=
różny
<>
różny
contains
zawiera ciąg
Elementy silnika Liquid
Instrukcje sterujące
Obiekty
Filtry
Akcje
Czy ten artykuł był pomocny?