Dostępne obiekty języka Liquid
Obiekty Liquid zawierają atrybuty, co pozwala wyprowadzić zawartość dynamiczną na stronę. Na przykład obiekt strona ma atrybut o nazwie title, który może służyć do wyprowadzania tytułu bieżącej strony.
Aby uzyskać dostęp do atrybutu obiektu po nazwie, użyj kropki (.). Aby renderować atrybut obiektu w szablonie, ujmij go w {{ and }}.
Ważne
Aby uniknąć potencjalnych problemów ze skryptami krzyżowymi (XSS), zawsze używaj filtra escape do kodowania danych HTML za każdym razem, gdy używasz obiektów Liquid do odczytywania niezaufanych danych dostarczonych przez użytkownika.
{{ page.title }}
Dostęp do atrybutów obiektu można również uzyskać przy użyciu nazwy ciągu i []. Ten format jest przydatny w przypadkach, gdy wymagany atrybut jest określany dynamicznie, lub nazwa atrybutu zawiera znaki, spacje, znaki specjalne, itp., które mogłyby być niepoprawne w przypadku użycia kropki (.) wewnątrz składni.
{{ page[title] }}
{% assign attribute_name = Name with spaces %}
{{ object[attribute_name] }}
Następujące obiekty mogą być używane i udostępniane w dowolnym miejscu, w dowolnym szablonie.
Objekt | opis |
---|---|
encje | Umożliwia ładowanie dowolnej tabeli Microsoft Dataverse po identyfikatorze. Więcej informacji: Encje |
teraz | Obiekt data/godzina, który odnosi się do bieżącego czasu UTC, w czasie, kiedy renderowany jest szablon. Uwaga: Aplikacja internetowa portalu buforuje tę wartość i nie jest ona odświeżana za każdym razem. Więcej informacji: Filtry daty |
page | Odnosi się do bieżącej strony żądania portalu. Obiekt strona umożliwia dostęp do takich elementów, jak struktury nawigacyjne dla bieżącej strony, tytuł lub adres URL bieżącej strony oraz inne atrybuty lub encje pokrewne podlegającego rekordu Dataverse. Więcej informacji: strona |
parametry | Wygodny skrót dla request.params. Więcej informacji: żądanie |
żądanie | Zawiera informacje o bieżącym żądaniu HTTP. Więcej informacji: żądanie |
ustawienia | Umożliwia ładowanie dowolnego Ustawienia witryny po nazwie. Więcej informacji: ustawienia |
sitemap | Umożliwia dostęp do mapy witryny portalu. Więcej informacji: mapa witryny |
znaczniki witryn | Umożliwia ładowanie dowolnych Znaczników witryny po nazwie. Więcej informacji: znaczniki witryny |
fragmenty kodu | Umożliwia ładowanie dowolnego Fragmentu kodu zawartości po nazwie. Więcej informacji: wstawki |
Użytkownik | Odnosi się do bieżącego użytkownika portalu, umożliwiając dostęp do wszystkich atrybutów podlegającego rekordu kontaktu Dataverse. Jeśli żaden użytkownik nie jest zalogowany, zmienna ta będzie miała wartość null. Więcej informacji: użytkownik |
linki sieci Web | Umożliwia ładowanie dowolnego Zestawu linków sieci Web po nazwie lub identyfikatorze. Więcej informacji: łącz internetowe |
witryna sieci Web | Odnosi się do rekordu Witryna sieci Web portalu, umożliwiając dostęp do wszystkich atrybutów rekordu Witryna sieci Web portalu Dataverse (adxwebsite). Więcej informacji: witryna internetowa |
ads
Umożliwia pobranie i wyświetlenie reklamy.
Obiekt ads pozwala na wybranie określonej reklamy lub umieszczenia reklamy:
<div>
{% assign ad = ads[Ad Name] %}
<h4>{{ ad.title }}</h4>
<a href={{ ad.redirect_url }}>
<img src={{ ad.image.url }} alt={{ ad.image.alternate_text }} />
</a>
</div>
Atrybuty reklam
Atrybut | opis |
---|---|
placements | Zwraca obiekt adplacements. |
[nazwa lub identyfikator reklamy] | Możesz uzyskać dostęp do dowolnej reklamy przez jej nazwę lub identyfikator właściwości. {% assign ad = ads[Ad Name] %} {% assign ad = ads["da8b8a92-2ee6-476f-8a21-782b047ff460"] %} |
Atrybuty Umieszczenie reklam
Atrybut | opis |
---|---|
[umieszczenie reklamy lub identyfikator] | Możesz uzyskać dostęp do dowolnego adplacement za pomocą nazwy lub właściwości identyfikatora.{% assign placement = ads.placements[Placement Name or Id] %} {% assign placement = ads.placements[2423d713-abb3-44c3-8a7d-c445e16fccad] %} |
Atrybuty Umieszczenie reklamy
Położenie reklamy to obiekt tabeli o tych samych atrybutach ogólnych i następujących atrybutach.
Atrybut | Podpis |
---|---|
Reklamy | Zwraca kolekcję obiektów reklamy związanych z umieszczeniem. Tagi iteracji i filtry tablicowe mogą być używane z tą kolekcją. |
Nazwa/nazwisko | Zwraca pole Nazwa dla umieszczenia reklamy. |
placement_url | Adres URL, którego można użyć do pobierania umieszczenia reklamy w pełni renderowany przez szablon. |
random_url | Adres URL, którego można użyć do pobrania losowej reklamy z umieszczenia w pełni renderowanego przez szablon. |
Atrybuty reklamy
Uwaga
Reklama to obiekt tabeli, posiadający wszystkie te same atrybuty, oprócz następujących:
Atrybut | Podpis |
---|---|
ad_url | Adres URL, którego można użyć do pobierania reklamy w pełni renderowany przez szablon. |
Kopiuj | Zwraca pole Kopiuj dla reklamy. |
obraz | Zwraca obiekt obraz (jeśli istnieje) dla reklamy. |
Nazwa/nazwisko | Zwraca pole Nazwa dla reklamy. |
open_in_new_window | Zwraca wartość true, jeśli adres URL określony przez redirect_url powinien się otworzyć w nowym oknie. |
redirect_url | Adres URL, do którego użytkownik zostanie skierowany, po kliknięciu reklamy. |
Atrybuty obrazu reklamy
Atrybut | opis |
---|---|
alternate_text | Zwraca tekst, który ma się pojawiać w atrybucie alt znacznika. |
height | Zwraca wysokość obrazu w pikselach |
url | Zwraca adres URL źródła obrazu. |
szerokość | Zwraca szerokość obrazu w pikselach |
blogi
Umożliwia pobieranie i wyświetlanie blogów i wpisów w blogu.
Obiekt blogs pozwala na wybranie określonego bloga lub wpisów w blogach.
{% assign posts = blogs.posts | paginate: 0,4 %}
<div class=content-panel panel panel-default>
<div class=panel-heading>
{% assign sitemarker = sitemarkers["Blog Home"] %}
{% assign snippet = snippets[Home Blog Activity Heading] %}
<a class=pull-right href={{sitemarker.url}}> All Blogs </a>
<h4>
<a class=feed-icon fa fa-rss-square href={{ blogs.feedpath }} />
{{ snippet.adx_value }}
</h4>
</div>
<ul class=list-group>
{% for post in posts.all %}
<li class=list-group-item >
<a class=user-avatar href={{ post.author_url }}>
<img src={{ post.user_image_url }} />
</a>
<h4 class=list-group-item-heading>
<a href={{ post.app_relative_path }}>{{ post.title }}</a>
</h4>
<div class=content-metadata>
<abbr class=timeago>{{ post.publish_date }}</abbr>
–
<a href={{ post.author_url }}> {{ post.author_name }} </a>
–
<a href={{ post.application_path }}#comments>
<span class=fa fa-comment aria-hidden=true></span> {{ post.comment_count }}
</a>
</div>
</li>
{% endfor %}
</ul>
</div>
Obiekt blogi
Obiekt blogi pozwala na dostęp do dowolnego bloga w portalu, lub wszystkich wpisów w blogach w portalu.
W poniższej tabeli opisano atrybuty związane z obiektem blogs .
Atrybut | Opis |
---|---|
posts | Zwraca obiekt blogposts zawierający wszystkie wpisy z blogów w portalu. |
[nazwa lub identyfikator blogu] | Możesz uzyskać dostęp do dowolnego bloga za pomocą jego nazwy lub właściwości identyfikatora. |
{% assign blog = blogs["Blog Name"] %}
{% assign blog = blogs["da8b8a92-2ee6-476f-8a21-782b047ff460"] %} |
Obiekt blog
Obiekt blog pozwala na pracę z jednym blogiem, pozwalając na dostęp do wpisów na tym blogu.
W poniższej tabeli opisano różne atrybuty związane z obiektem blog.
Atrybut | Opis |
---|---|
posts | Zwraca obiekt blogposts zawierający wszystkie wpisy z bloga. |
Nazwa | Nazwa bloga. |
tytuł | Tytuł bloga. |
Adres URL | Adres URL bloga. |
Obiekt blogposts
Obiekt blogposts pozwala na dostęp do kolekcji obiektów wpisy w blogu. Możesz zamówić wpisy w blogu i osiągnąć podział na strony oraz użyć filtrów Liquid:
{% assign blogposts = blogs.posts | order\_by “adx\_name”, “desc” | paginate: 0,4 | all %}
Inne możliwe opcje:
blogs.posts.all
(aby uzyskać wszystkie posty na blogu)blogs.posts | from\_index: 0 | take: 2
W poniższej tabeli opisano różne atrybuty związane z obiektem blogposts.
Atrybut | Opis |
---|---|
A-Z | Zwraca wszystkie obiekty blogposts w kolekcji |
Obiekt blogpost
Odnosi się do pojedynczego wpisu w blogu.
W poniższej tabeli opisano różne atrybuty związane z obiektem blogpost.
Atrybut | Opis |
---|---|
url | Adres URL wpisu. |
content | Zwraca pole Zawartość dla wpisu. |
autor | Zwraca autora dla wpisu (który jest po prostu obiektem tabelakontaktu. |
title | Tytuł wpisu. |
comment_count | Zwraca wartość całkowitą będącą liczbą komentarzy dla danego wpisu. |
publish_date | Data opublikowania wpisu. |
encje
Uwaga
Aby uniknąć potencjalnych problemów z XSS (cross-site scripting), zawsze używaj filtr wyjścia do kodowania HTML danych łańcuchowych, gdy używasz obiektu encje Liquid do odczytywania danych dostarczonych przez użytkownika, które nie mogą być zaufane.
Uwaga
Niektóre konwencje nazewnictwa Dataverse zostały zmienione, na przykład encje Dataverse są teraz nazywane tabelami. Zmiany nazwy nie mają zastosowania do obiektów Obiekty Liquid. Obiekt Liquid encji będzie nadal nazywany encją.
Umożliwia ładowanie dowolnej tabeli Dataverse po identyfikatorze. Jeśli tabela istnieje, zostanie zwrócony obiekt tabeli. Jeśli tabela o podanym identyfikatorze nie zostanie znaleziona, zostanie zwrócony null.
{% assign account = entities.account['936DA01F-9ABD-4d9d-80C7-02AF85C822A8'] %}
{% if account %}
{{ account.name | escape }} ({{ account.statecode.label | escape }})
{% endif %}
{% assign entity_logical_name = 'contact' %}
{% assign contact = entities[entity_logical_name][request.params.contactid] %}
{% if contact %}
{{ contact.fullname | escape }} ({{ contact.parentcustomerid.name | escape }})
{% endif %}
Jednostka
Obiekt encja zapewnia dostęp do atrybutów rekordu tabeli Dataverse.
Atrybut | Opis |
---|---|
Id | Identyfikator GUID tabeli, jako ciąg. Na przykład 936DA01F-9ABD-4d9d-80C7-02AF85C822A8 |
logical_name | Nazwa logiczna tabeli Dataverse. |
Uwagi | Ładuje wszystkie notatki skojarzone z tabelą, uporządkowane od najstarszych do najnowszych (createdon ). Notatki są zwracane jako obiekty notatka. |
uprawnienia | Ładuje wyniki potwierdzenia Uprawnienia tabeli dla tabeli. Wyniki są zwracane jako obiekt uprawnienia. |
adres URL | Zwraca ścieżkę URL systemu zarządzania zawartością Power Pages dla tabeli. Jeśli tabela nie posiada prawidłowego adresu URL w bieżącej witrynie sieci Web, zwraca null. Ogólnie rzecz biorąc, zwróci to tylko wartość dla pewnych typów tabeli, które zostały zintegrowane z portalem CMS , chyba że dostosował dostawcę adresu URL w aplikacji. |
[atrybut lub nazwa relacji] | Możesz uzyskać dostęp do dowolnego atrybutu tabeli Dataverse po nazwie logicznej. {{ entity.createdon }}{% assign attribute_name = 'name' %}{{ entity[attribute_name] }} Wartości większości atrybutów tabeli mapują bezpośrednio do Typy Liquid: Dwa pola opcji mapują do wartości logicznych, pola tekstowe do ciągów, pola numeryczne/waluty do liczb, pola data/godzina do obiektów data. Jednak niektóre typy atrybutów są zwracane jako obiekty:
{{ page.adx_webpage_entitylist.adx_name }} W przypadku, gdy relacja jest zwrotna (czyli autoreferencyjna ), zwracany jest obiekt relacji refleksyjnej. (W przeciwnym razie wynik będzie niejednoznaczny.){{ page.adx_webpage_webpage.referencing.adx_name }} Uwaga: Wczytywanie dużej liczby powiązanych encji lub uzyskiwanie dostępu do dużej liczby relacji w jednym szablonie może mieć negatywny wpływ na wydajność renderowania szablonu. Należy unikać ładowania encji pokrewnych dla każdego elementu w tablicy, wewnątrz pętli. Wszędzie tam, gdzie jest to możliwe użyj tagów tabeli Dataverse, aby załadować kolekcje encji. |
Odwołanie do skojarzonej tabeli
Wartości atrybutów wyszukiwania są zwracane jako powiązane obiekty odwołań do tabeli z następującymi atrybutami.
Atrybut | Opis |
---|---|
Id | Identyfikator GUID tabeli, do której istnieje odwołanie, jako ciąg. Na przykład 936DA01F-9ABD-4d9d-80C7-02AF85C822A8 |
logical_name | Nazwa logiczna Dataverse wybranej tabeli. |
Nazwa/nazwisko | Atrybut nazwy podstawowej wybranej tabeli. |
Uwaga
Notatka to obiekt tabeli, który zapewnia dostęp do atrybutów i relacji rekordu notatki. Oprócz posiadania wszystkich atrybutów obiektu tabeli, notatka posiada również dodatkowe atrybuty.
Atrybut | Podpis |
---|---|
documentbody | Ładuje atrybut ducumentbody do rekordu notatki, jako ciąg zakodowany algorytmem Base64. Ponieważ zawartość tego atrybutu może być duża, nie jest on ładowany z resztą atrybutów notatki, a wyłącznie na żądanie. Uwaga: Użycie atrybutu documentbody może mieć negatywny wpływ na wydajność renderowania szablonu i powinno być wykonywane z ostrożnością. Użyj atrybutu url, aby udostępnić łącze do załącznika notatki, jeśli jest to możliwe. |
Adres URL | Zwraca ścieżkę URL dla wbudowanego programu obsługi załączników adnotacji portalu. Jeśli użytkownik ma uprawnienia, a notatka ma dołączony plik, żądanie do tego adresu URL pobiera załącznik notatki. |
Uwaga
Wartości Zestaw opcji
Wartości atrybutów zestawu opcji / listy wyboru są zwracane jako powiązane obiekty odniesienia do tabeli z następującymi atrybutami.
Atrybut | Opis |
---|---|
Etykieta | Zlokalizowana etykieta wartości atrybutu zestaw opcji/lista wyboru. Na przykład: Aktywny |
Wartość | Wartość całkowita wartości atrybutu zestaw opcji/lista wyboru. Na przykład: 0 |
Uprawnienia do tabeli
Obiekt uprawnienia tabeli zapewnia dostęp do zagregowanych wyników potwierdzenia uprawnień dla tabeli.
Atrybut | opis |
---|---|
can_append | Zwraca true, jeśli bieżący użytkownik ma uprawnienie, aby dołączać rekordy do relacji tego rekordu. W przeciwnym razie zwraca wartość false. |
can_append_to | Zwraca true, jeśli bieżący użytkownik ma uprawnienie, aby dołączyć ten rekord do relacji innej tabeli. W przeciwnym razie zwraca wartość false. |
can_create | Zwraca true, jeśli bieżący użytkownik ma uprawnienie, aby utworzyć nowe rekordy tego typu tabeli. W przeciwnym razie zwraca wartość false. |
can_delete | Zwraca true, jeśli bieżący użytkownik ma uprawnienie do usunięcia tego rekordu. W przeciwnym razie zwraca wartość false. |
can_read | Zwraca true, jeśli bieżący użytkownik ma uprawnienie do odczytu tego rekordu. W przeciwnym razie zwraca wartość false. |
can_write | Zwraca true, jeśli bieżący użytkownik ma uprawnienie do aktualizacji tego rekordu. W przeciwnym razie zwraca wartość false. |
rules_exist | Zwraca true, jeśli wyniki uprawnień reprezentowanych przez ten obiekt są wynikiem jawnie zdefiniowanych reguł uprawnienia. Zwraca false, jeśli są one wynikami domyślnymi w przypadku braku jawnie zdefiniowanych uprawnień. |
Relacja zwrotna
Próby załadowania relacji zwrotnych (czyli zawierających odwołanie do samych siebie) na encjach są zwracane jako obiekty z następującymi atrybutami.
Atrybut | opis |
---|---|
is_reflexive | Zwraca wartość true. Może służyć do testowania, czy obiekt zwrócony przez relację jest obiektem relacji zwrotnej. |
referenced | Zwraca tablicę wybranych encji dla danej relacji. |
referencing | Zwraca encję odwołującą dla danej tabeli. Zwraca null, jeśli nie istnieje tabela odwołująca. Jeśli relacja to wiele do wielu (N:N), zwraca tablicę encji odwołujących. |
entitylist
Obiekt listy encji jest używany w tagach tabeli Dataverse. Zapewnia dostęp do wszystkich atrybutów listy danej.
Atrybuty
Uwaga
Atrybut | opis |
---|---|
create_enabled | Zwraca true, jeśli tworzenie nowych rekordów jest konfigurowane dla listy. W przeciwnym razie zwraca wartość false. |
create_url | Zwraca skonfigurowaną ścieżkę URL dla łącza/przycisku tworzenia dla listy. |
detail_enabled | Zwraca true, jeśli widok szczegółów dla poszczególnych rekordów jest konfigurowany dla listy. W przeciwnym razie zwraca wartość false. |
detail_id_parameter | Zwraca nazwę parametru ciągu zapytania, aby użyć w identyfikatorze rekordu przy konstruowaniu adresu URL widoku szczegółowego rekordu. Zobacz filtry URL, aby poznać szczegółowe informacje na temat korzystania z filtrów Liquid do konstruowania adresów URL. Na przykład: id |
detail_label | Zwraca skonfigurowaną zlokalizowaną etykietę dla łączy widoku szczegółowego/przycisków listy. |
detail_url | Zwraca skonfigurowaną ścieżkę URL dla łączy widoku szczegółowego/przycisków listy. |
empty_list_text | Zwraca skonfigurowany zlokalizowany tekst, który ma być wyświetlany, gdy widok listy nie zwraca żadnych wyników. |
enable_entity_permissions | Zwraca true, jeśli filtrowanie Uprawnienie tabeli jest włączone dla tej listy. W przeciwnym razie zwraca wartość false. |
entity_logical_name | Zwraca nazwę logiczną tabeli Dataverse dla rekordów, które mają być wyświetlane przez tę listę. Na przykład: contact |
filter_account_attribute_name | Zwraca nazwę logiczną atrybutu dla wyszukiwania dla konta, która zostanie użyta do filtrowania rekordów wyników przez konto nadrzędne bieżącego użytkownika portalu. Na przykład: accountid |
filter_apply_label | Zwraca skonfigurowaną zlokalizowaną etykietę, która ma być używana dla łącza/przycisku, który dotyczy zaawansowanego filtru atrybutu dla wyników listy. |
definicja_filtru | Zwraca filtr atrybut JSON dla listy. Zobacz Filtry listy, aby poznać szczegółowe informacje na temat sposobu używania filtru Liquid metafilters, aby przetworzyć tę definicję. |
filter_enabled | Zwraca true, jeśli zaawansowane filtrowanie atrybutu jest włączone dla listy. W przeciwnym razie zwraca wartość false. |
filter_portal_user_attribute_name | Zwraca nazwę logiczną atrybutu dla wyszukiwania dla kontaktu, która zostanie użyta do filtrowania rekordów wyników przez kontakt bieżącego użytkownika portalu. Na przykład: contactid |
filter_website_attribute_name | Zwraca nazwę logiczną atrybutu dla wyszukiwania adx_website zostanie użyta do filtrowania rekordów wyników przez witrynę sieci Web bieżącego portalu. Na przykład: adx_websiteid |
language_code | Zwraca całkowity kod języka Dataverse, który posłuży do wybrania wszystkich zlokalizowanych etykiet dla tej listy. |
page_size | Zwraca rozmiar skonfigurowanej strony wyników dla listy. |
primary_key_name | Zwraca nazwę logiczną atrybutu klucza podstawowego dla rekordów, które mają być wyświetlane przez tę listę. |
search_enabled | Zwraca true, jeśli wyszukiwanie jest włączone dla tej listy. W przeciwnym razie zwraca wartość false. |
search_placeholder | Zwraca skonfigurowany zlokalizowany tekst dla symbolu zastępczego pola wyszukiwania listy. |
search_tooltip | Zwraca skonfigurowany zlokalizowany tekst dla etykietki narzędzi wyszukiwania listy. |
widoki | Zwraca dostępne widoki dla listy, jako obiekty widoku listy. |
[nazwa logiczna atrybutu] | Możesz uzyskać dostęp do dowolnego atrybutu rekordu listy (adx_entitylist) rekordu Dataverse według nazwy logicznej, w taki sam sposób jak obiekt tabela. Na przykład {{ entitylist.adx_name }} |
Atrybuty widoku listy
Atrybut | opis |
---|---|
kolumny | Zwraca kolumny widoku jako obiekty kolumny widoku listy. |
entity_logical_name | Zwraca nazwę logiczną tabeli Dataverse dla rekordów uwzględnionych w widoku. Na przykład: contact |
Id | Zwraca identyfikator GUID widoku. |
language_code | Zwraca całkowity kod języka Dataverse, który posłuży do zaznaczania wszystkich zlokalizowanych etykiet (nagłówków kolumn, itp.) dla widoku. |
Nazwa/nazwisko | Zwraca wyświetlaną nazwę Dataverse widoku. |
primary_key_logical_name | Zwraca nazwę logiczną klucza podstawowego tabeli Dataverse dla rekordów uwzględnionych w widoku. Na przykład: contactid |
sort_expression | Zwraca wyrażenie sortowanie domyślne dla widoku. Na przykład: name ASC, createdon DESC |
Atrybuty kolumny widoku listy
Atrybut | opis |
---|---|
attribute_type | Zwraca nazwę typu atrybutu Dataverse dla kolumny, jako ciąg. Na przykład: Lookup, Picklist, String, Boolean, DateTime |
logical_name | Zwraca nazwę logiczną atrybutu Dataverse dla kolumny. Na przykład: createdon |
Nazwisko | Zwraca zlokalizowaną wyświetlaną nazwę Dataverse dla kolumny. Na przykład: Created On |
sort_ascending | Zwraca ciąg wyrażenia sortowania do sortowania kolumny w kolejności rosnącej. Na przykład: createdon ASC |
sort_descending | Zwraca ciąg wyrażenia sortowania do sortowania kolumny w kolejności malejącej. Na przykład: createdon DESC |
sort_disabled | Zwraca true, jeśli sortowanie dla kolumny jest wyłączone. W przeciwnym razie zwraca wartość false. |
sort_enabled | Zwraca true, jeśli sortowanie dla kolumny jest włączone. W przeciwnym razie zwraca wartość false. |
width | Zwraca skonfigurowaną szerokość kolumny, w pikselach. |
entityview
Obiekt entityview jest używany wewnątrz znacznika entityview i zapewnia dostęp do metadanych dla widoku, jak również rekordów wyników widoku.
Atrybuty
Atrybut | Opis |
---|---|
kolumny | Zwraca kolumny w widoku, jako obiekty kolumny widoku tabeli. |
entity_permission_denied | Zwraca true, jeśli udzielono odmowy dostępu do przeglądania wyników z powodu niewystarczających uprawnień tabeli dla bieżącego użytkownika. Zwraca false, jeśli udzielono zgody na dostęp do przeglądania wyników. |
entity_logical_name | Nazwa logiczna tabeli Dataverse rekordów wyników widoku. Na przykład: contact |
first_page | Numer strony na pierwszej stronie wyników. Będzie to 1, chyba że nie otrzymano wyników, ponieważ w takim przypadku będzie to null. |
Id | Identyfikator GUID widoku Dataverse, który definiuje ten entityview. |
language_code | Całkowity kod języka Dataverse używany do ładowania zlokalizowanych etykiet dla bieżącego widoku. |
last_page | Numer strony na ostatniej stronie wyników. Jeśli nie otrzymano wyników, będzie to null. |
name | Nazwa widoku Dataverse, który definiuje ten entityview., na przykład Aktywne kontakty. |
next_page | Numer strony na następnej stronie wyników. Jeśli nie ma żadnej następnej strony wyników, będzie to null. |
Strona | Numer strony na bieżącej stronie wyników. |
pages | Zwraca tablicę z numerami stron zawierającą wszystkie strony wyników dla bieżącego widoku. |
page_size | Ilość wyników zwróconych na stronę dla bieżącego widoku. |
previous_page | Numer strony na następnej stronie wyników. Jeśli nie ma żadnej poprzedniej strony wyników, będzie to null. |
primary_key_logical_name | Nazwa logiczna Dataverse podstawowego atrybutu klucza tabeli wyników dla tego widoku. Na przykład: contactid. |
rekordy | Bieżąca strona rekordów wyników dla widoku, jako obiekty tabeli. |
sort_expression | Domyślne wyrażenie sortowania dla widoku. Na przykład: nameASC, createdon DESC. |
total_pages | Całkowita liczba stron wyników dla tego widoku. |
total_records | Całkowita liczba wyników dla tego widoku (na wszystkich stronach). |
zdarzenia
Umożliwia pobranie i wyświetlenie reklamy. Obiekt events pozwala na wybranie określonego zdarzenia lub wszystkich zdarzeń.
Obiekt events
Obiekt events pozwala na dostęp do wszelkich zdarzeń w portalu, lub wszystkich zdarzeń w portalu (niezależnie od zdarzenia).
Obiekt events posiada następujące atrybuty:
Atrybut | Podpis |
---|---|
wystąpienia/wystąpień | Zwraca obiekt eventoccurancessobject zawierający wszystkie wystąpienia zdarzeń w portalu |
[event name or id] | Możesz uzyskać dostęp do dowolnego zdarzenia za pomocą jego nazwy lub właściwości identyfikatora. {% assign event = events["Event Name"] %} {% assign event = events["da8b8a92-2ee6-476f-8a21-782b047ff460"] %} |
Obiekt event
Obiekt event pozwala na pracę z pojedynczym zdarzeniem, pozwalając na dostęp do harmonogramów i wystąpień dla tego zdarzenia.
Obiekt event posiada następujące atrybuty:
Atrybut | Opis |
---|---|
wystąpienia/wystąpień | Zwraca eventoccurancessobject zawierający wszystkie wystąpienia dla zdarzenia. |
Nazwa | Nazwa zdarzenia. |
Adres URL | Adres URL zdarzenia. |
Obiekt eventoccurences
Obiekt eventoccurrences pozwala na dostęp do kolekcji obiektów wystąpienia zdarzenia. Możesz zamówić wystąpienia zdarzenia i określić zakres dat dla wystąpień, które mają zostać pobrane, oraz uzyskać podział na strony jak również używać filtrów liquid:
{% assign occurances = event.occurrences.from[today].to[advance_date] %}
Możliwa jest także następująca opcja:
{% assign occurances = event.occurrences.min[today].max[advance_date] %}
Następujące atrybuty są skojarzone z obiektem eventoccurrences
Atrybut | Opis |
---|---|
A-Z | Zwraca wszystkie obiekty eventoccurrence w kolekcji. |
Obiekt eventoccurence
Reprezentuje pojedyncze wystąpienie zdarzenia. Oto powiązane atrybuty:
Atrybut | Podpis |
---|---|
adres URL | Adres URL wystąpienia. |
is_all_day_event | Czy jest to zdarzenie całodzienne? |
start_time | Godzina rozpoczęcia zdarzenia. |
end_time | Godzina zakończenia zdarzenia. |
forloop
Zawiera właściwości, które są przydatne w przypadku bloku pętli for.
Uwaga
Forloop mogą być używane tylko w ramach tagu for.
Kod
{% for child in page.children %}
{% if forloop.first %}
This is the first child page!
{% else %}
This is child page number {{ forloop.index }}.
{% endif %}
{% endfor %}
Wyjście
This is the first child page!
This is child page number 2.
This is child page number 3.
Atrybuty
Atrybut | Opis |
---|---|
pierwszy | Zwraca true, jeśli jest to pierwsza iteracja pętli. Zwraca false, jeśli nie jest to pierwsza iteracja. |
index | Pozycja bieżącego elementu w kolekcji, gdzie pierwszy element znajduje się na pozycji 1. |
index0 | Pozycja bieżącego elementu w kolekcji, gdzie pierwszy element znajduje się na pozycji 0. |
Ostatnia | Zwraca true, jeśli jest to ostatnia iteracja pętli. Zwraca false, jeśli nie jest to ostatnia iteracja. |
length | Zwraca liczbę iteracji pętli ߝ liczba elementów w kolekcji dla której ma miejsce iteracja. |
rindex | Liczba elementów pozostałych w pętli (długość - indeks) gdzie 1 stanowi indeks ostatniego elementu. |
rindex0 | Liczba elementów pozostałych w pętli (długość - indeks) gdzie 0 stanowi indeks ostatniego elementu. |
forums
Umożliwia pobieranie i wyświetlanie forum i wpisów na forach. Możliwość używania kodu Liquid do renderowania danych forum rozciąga się na wpisy, ale aby utworzyć nowy wpis lub wątek, należy użyć szablonu strony formularzy obejmujących wiele kroków ASP.NET z wbudowaną wspomnianą funkcją (na przykład domyślny wątek forum i szablony stron wpisów na forum).
Obiekt forum pozwala na wybranie Forum lub Wątków na Forum:
<div class=content-panel panel panel-default>
<div class=panel-heading>
<h4>
<span class=fa fa-comments aria-hidden=true></span>
{{ snippets[Home Forum Activity Heading] | default: Forum Activity | h }}
</h4>
</div>
{% for forum in website.forums %}
<ul class=list-group>
<li class=list-group-item>
<div class=row>
<div class=col-sm-6>
<h4 class=list-group-item-heading><a href="{{ forum.url | h }}"> {{ forum.name | h }}</a></h4>
<div class=list-group-item-text content-metadata>{{ forum.adx_description | h }}</div>
</div>
<div class=col-sm-3 content-metadata>{{ forum.thread_count }} threads</div>
<div class=col-sm-3 content-metadata>{{ forum.post_count }} posts</div>
</div>
</li>
</ul>
{% endfor %}
</div>
Obiekt forum
Obiekt forum pozwala na dostęp do wszelkich szczególnych forów w portalu, lub na dostęp do wszystkich wątków na forum w portalu (niezależnie od forum).
Obiekt forum pozwala na pracę z jednym forum, pozwalając na dostęp do wątków na tym forum.
Obiekt forumthreads pozwala na dostęp do kolekcji obiektów forumthread. Możesz określić kolejność wątków na forum i osiągnąć podział na strony używając filtrów Liquid.
{% assign threads = forum.threads | order_by adx_name, desc | paginate: 0,4 | all %}
Pojedynczy wątek na forum
Obiekt forumposts pozwala na dostęp do kolekcji obiektów forumpost.
Atrybuty
Atrybut | Opis |
---|---|
threads | Zwraca obiekt forumthreads zawierający wszystkie obiekty forumthread w portalu. |
Wszystkie | Zwraca wszystkie obiekty forum w portalu. Zauważ, że odpowiednikiem jest website.forums. |
thread_count | Zwraca wartość całkowitą liczby wątków, które znajdują się w całej witrynie sieci Web. |
post_count | Zwraca wartość całkowitą całkowitej liczby wpisów w portalu. |
[nazwa lub identyfikator forum] | Możesz uzyskać dostęp do dowolnego forum za pomocą jego nazwy lub właściwości identyfikatora. `{% assign forum = forums[Forum Name] %} {% assign forum = forums[da8b8a92-2ee6-476f-8a21-782b047ff460] %} |
Obiekt forum
Atrybuty
Uwaga
Atrybut | opis |
---|---|
threads | Zwraca obiekt forumthreads zawierający wszystkie wątki forum dla forum. |
Nazwa/nazwisko | Nazwa forum. |
thread_count | Zwraca wartość całkowitą liczby wątków, które znajdują się w całym forum. |
post_count | Zwraca wartość całkowitą liczby wpisów, które znajdują się w całym forum. |
Obiekt forumthreads
Atrybuty
Atrybut | Opis |
---|---|
Wszystkie | Zwraca wszystkie obiekty forumthread w kolekcji. |
Obiekt forumthread
Atrybuty
Uwaga
Atrybut | opis |
---|---|
posts | Zwraca obiekt forumposts zawierający wszystkie wpisy na forum dla wątku. |
author | Zwraca autora dla wątku (który jest po prostu obiektem tabela kontaktu). |
latest_post | Zwraca ostatni wpis w wątku. |
first_post | Zwraca pierwszy wpis w wątku. |
post_count | Zwraca wartość całkowitą liczby wpisów, które znajdują się w wątku. |
is_answered | Czy udzielono odpowiedzi na wątek? |
is_sticky | Czy wątek jest wątkiem przyklejonym? |
Obiekt forumposts
Atrybuty
Atrybut | Opis |
---|---|
Wszystkie | Zwraca wszystkie obiekty forumthread w kolekcji. |
Pojedynczy wpis na forum
Atrybuty
Uwaga
Atrybut | opis |
---|---|
autor | Zwraca autora dla wpisu (który jest po prostu obiektem tabelakontaktu). |
content | Zawartość wpisu. |
is_answer | Czy ten wpis stanowi odpowiedź dla wątku? |
baza wiedzy
Umożliwia uzyskanie dostępu do artykułu merytorycznego Dataverse i rekordów tabeli kategorii w celu renderowania artykułów i kategorii w portalu.
Atrybuty
Atrybut | Opis |
---|---|
artykuły | Zwraca obiekt artykuły zawierający obiekty artykuł dla rekordów tabeli knowledgearticle dostępnych w portalu. |
kategorie | Zwraca obiekt kategorie zawierający obiekty kategoria dla rekordów tabeli kategoria dostępnych w portalu. |
obiekt artykuły
Obiekt artykuły pozwala na dostęp do kolekcji obiektów artykuł. Możesz określić kolejność artykułów i uzyskać podział na strony, jak również użyć filtrów Liquid.
{% assign count = count | default: 3 %}
{% assign languagecode = website.selected_language.code %}
{% assign popular_articles = knowledge.articles | popular: count,languagecode %}
{% if popular_articles %}
<div class=list-group>
{% for article in popular_articles %}
<div class=list-group-item clearfix>
<a class=title href={{ article.url | escape }}>{{ article.title | escape }}</a>
<p class=description>{{ article.description | escape }}</p>
</div>
{% endfor %}
</div>
{% endif %}
Atrybuty
Atrybut | Opis |
---|---|
popularne | Zwraca kolekcję obiektów artykuł zawierającą najwięcej widoków. {% assign popular_articles = knowledge.articles.popular %} |
ostatnie | Zwraca kolekcję obiektów artykuł zawierającą najnowszą zmodyfikowaną datę. {% assign recent_articles = knowledge.articles.recent %} |
najpopularniejsze | Zwraca kolekcję obiektów artykuł zawierającą najwyższą ocenę. {% assign top_articles = knowledge.articles.top %} |
Filtry
Następujące filtry mogą przyjąć parametry opcjonalne dla rozmiaru strony i języka. Pierwszy parametr to numer lub rekordy do pobrania. Domyślny rozmiar strony to 5. Drugi parametr to kod języka, aby pobrać artykuły w danym języku. Filtry mogą być łączone z innymi filtrami Liquid.
{% assign page_size = 5 %}
{% assign language_code = website.selected_language.code %}
{% assign recent_articles = knowledge.articles | recent: page_size, language_code %}
Atrybut | Podpis |
---|---|
popularne | Zwraca kolekcję obiektów artykuł zawierającą najwięcej widoków. {% assign popular_articles = knowledge.articles \| popular: 10, en-US %} |
ostatnie | Zwraca kolekcję obiektów artykuł zawierającą najnowszą zmodyfikowaną datę. {% assign recent_articles = knowledge.articles \| recent: 5 %} |
najpopularniejsze | Zwraca kolekcję obiektów artykuł zawierającą najwyższą ocenę. {% assign top_articles = knowledge.articles \| top: 3, en-US %} |
Obiekt kategorie
Obiekt kategorie pozwala na dostęp do kolekcji obiektów kategorie. Możesz określić kolejność kategorii i osiągnąć podział na strony przy użyciu filtrów Liquid.
{% assign category_url = sitemarkers['Category'].url %}
{% assign count = count | default: 0 %}
{% assign categories = knowledge.categories | top_level: count %}
{% if categories %}
<div class=list-group unstyled>
{% for category in categories %}
<a href={{ category_url | add_query: 'id', category.categorynumber }} class=list-group-item>
{{ category.title }}
</a>
{% endfor %}
</div>
{% endif %}
Atrybuty
Atrybut | Opis |
---|---|
ostatnie | Zwraca kolekcję obiektów kategoria zawierającą najnowszą zmodyfikowaną datę. |
top_level | Zwraca kolekcję obiektów kategoria, które nie posiadają kategorii nadrzędnej. |
Filtry
Następujące filtry mogą przyjąć parametr opcjonalny określający rozmiar strony. Domyślny rozmiar strony to 5. Filtry mogą być łączone z innymi filtrami Liquid.
{% assign page_size = 5 %}
{% assign recent_categories = knowledge.categories | recent: page_size %}
Atrybut | Podpis |
---|---|
ostatnie | Zwraca kolekcję obiektów kategoria zawierającą najnowszą zmodyfikowaną datę. Możesz zapewnić parametry {% assign recent_categories = knowledge.categories \| recent: 10 %} |
top_level | Zwraca kolekcję obiektów kategoria, które nie posiadają kategorii nadrzędnej. {% assign root_categories = knowledge.categories \| top_level %} |
obiekt artykuł
Obiekt artykuł umożliwia pracę z jednym knowledgearticle, aby wyświetlić szczegółowe informacje dotyczące tego artykułu w portalu.
Atrybuty
Artykuł to obiekt encja, posiadający wszystkie te same atrybuty, oprócz tych:
Atrybut | Podpis |
---|---|
article_public_number | Publiczny numer artykułu dla artykułu. |
comment_count | Wartość całkowita będącą liczbą komentarzy dla danego wpisu. |
content | Zawartość artykułu. |
current_user_can_comment | Zwraca wartość logiczną określającą, czy bieżący użytkownik może dodawać komentarze do artykułu. |
is_rating_enabled | Zwraca wartość logiczną określającą, czy jest włączona ocena dla artykułu. |
słowa kluczowe | Słowa kluczowe dla artykułu. |
Nazwa | Alias alternatywny tytuł artykułu. |
klasyfikacja | Wartość dziesiętną klasyfikacji tego artykułu. |
tytuł | Tytuł artykułu. |
view_count | Wartość całkowita, określająca, ile razy artykuł był oglądany. |
Obiekt kategoria
Obiekt kategoria umożliwia pracę z jedną kategorią, aby wyświetlić jej szczegółowe informacje w portalu.
Atrybuty
kategoria to obiekt encja, posiadający wszystkie te same atrybuty, oprócz tych:
Atrybut | Podpis |
---|---|
categorynumber | Numer kategorii dla kategorii. |
Nazwa | Alias alternatywny tytułu kategorii. |
tytuł | Tytuł kategorii. |
język
Zawiera nazwę bieżącego języka i kod języka, jeśli włączono obsługę wielu języków.
Atrybuty
Atrybut | Opis |
---|---|
adres URL | Adres URL bieżącego żądania poprzedzony kodem bieżącego języka. |
url_substitution | Adres URL bieżącego żądania poprzedzony kodem bieżącego języka z pominięciem pamięci podręcznej danych wyjściowych strony. |
Nazwa | Tytuł bieżącego języka. |
kod | Kod języka. |
Na przykład szablon internetowy Lista rozwijana języków domyślnie używa tego obiektu Liquid do wyświetlenia listy dostępnych języków, gdy jest dostępnych wiele języków.
dziennik
Twórcy mogą włączać wyciągi z dzienników w swoim kodzie Liquid. Kiedy witryna Power Pages jest uruchomiona, dzienniki dodawane przez autora kodu Liquid są wyświetlane w rozszerzeniu narzędzia dla deweloperów Power Pages. Dzienniki osadzone przez twórcę są wyświetlane w rozszerzeniu narzędzia dla deweloperów po włączeniu ustawienia diagnostycznego.
W kodzie Liquid można użyć następującej składni do logowania komunikatów niestandardowych:
{% log message:'Custom message' level:'Warning' %}
Atrybuty dziennika
Atrybut | Podpis |
---|---|
dziennik | Nazwa obiektu Liquid |
wiadomość | Ciąg tekstowy reprezentujący wszystkie niestandardowe komunikaty do zarejestrowania |
level | Zarejestruj komunikat jako Informacje, Ostrzeżenie lub Błąd |
Przykład:
{% log message: 'Log from Home page' %}
{% fetchxml query %}
<fetch version="1.0" mapping="logical" >
<entity name="contact">
<attribute name="fullname"/>
<attribute name="emailaddress1"/>
</entity>
</fetch>
{% endfetchxml %}
{% assign contacts = query.results.entities %}
{% for contact in contacts %}
<div> Contact name: {{contact.fullname}} </div><br/>
{% capture msgg %}
Contact email is {{contact.emailaddress1}} for name {{contact.fullname}}
{% endcapture %}
{% log message: msgg %}
{% endfor %}
page
Odnosi się do bieżącej strony żądania portalu. Ten obiekt łączy atrybuty sitemap i bieżące żądanie entities (zazwyczaj jest to strona sieci Web).
Obiekt strona umożliwia dostęp do takich elementów, jak struktury nawigacyjne dla bieżącej strony, tytuł lub adres URL bieżącej strony oraz inne atrybuty lub encje pokrewne podlegającego rekordu Dataverse.
<ul class=breadcrumb>
{% for crumb in page.breadcrumbs %}
<li><a href={{ crumb.url | escape }}>{{ crumb.title | escape }}</a></li>
{% endfor %}
<li class=active>{{ page.title | escape }}</li>
</ul>
<div class=page-header>
<h1>{{ page.title | escape }}</h1>
</div>
<div class=page-copy>
{{ page.adx_copy }}
</div>
<div class=list-group>
{% for child in page.children %}
<a class=list-group-item href={{ child.url | escape }}>
{{ child.title | escape }}
</a>
{% endfor %}
</div>
<!-- Page {{ page.id }} was last modified on {{ page.modifiedon }}. -->
Atrybuty strony
Uwaga
Atrybut | opis |
---|---|
breadcrumbs | Zwraca nadrzędne obiekty węzła mapy witryny dla strony, począwszy od głównego węzła mapy witryny kończąc na nadrzędnym. |
children | Zwraca podrzędne obiekty węzeł mapy witryny dla strony. |
parent | Zwraca nadrzędny obiekty węzeł mapy witryny dla strony. Jeśli strona jest stroną główną, obiektem nadrzędnym będzie null. |
title | Tytuł strony. |
adres URL | Adres URL strony. |
[atrybut lub nazwa relacji] | Możesz uzyskać dostęp do dowolnego atrybutu rekordu Dataverse podlegającego stronie po nazwie logicznej.{{ page.createdon }} {% assign attribute_name = 'name' %} {{ page[attribute_name] }} Wartości większości atrybutów tabeli mapują bezpośrednio do Typy Liquid: Dwa pola opcji mapują do wartości logicznych, pola tekstowe do ciągów, pola numeryczne/waluty do liczb, pola data/godzina do obiektów data. Jednak niektóre typy atrybutów są zwracane jako obiekty:
{{ page.adx_webpage_entitylist.adx_name }} Jeśli relacja jest relacją zwrotną (czyli stanowi odwołanie do samej siebie), otrzymamy obiekt to encje. (W przeciwnym razie wynik będzie niejednoznaczny.) {{ page.adx_webpage_webpage.referencing.adx_name }} Uwaga: Wczytywanie dużej liczby powiązanych encji lub uzyskiwanie dostępu do dużej liczby relacji w jednym szablonie może mieć negatywny wpływ na wydajność renderowania szablonu. Należy unikać ładowania encji pokrewnych dla każdego elementu w tablicy, wewnątrz pętli. Wszędzie tam, gdzie jest to możliwe użyj tagów tabeli Dataverse, aby załadować kolekcje encji. |
ankiety
Umożliwia pobranie i wyświetlenie sondażu.
Obiekt polls pozwala na wybranie określonej ankiety lub umieszczenia ankiety:
<div>
{% assign poll = polls[Poll Name] %}
<h4>{{ poll.question }}</h4>
{% for option in poll.options %}
<div>
<input type=radio name={{ poll.name }} id={{ option.id }} />
<label for={{ option.id }}>{{ option.answer }}</label>
</div>
{% endfor %}
<button type=button>{{ poll.submit_button_label }}</button>
</div>
Atrybuty ankiet
Atrybut | opis |
---|---|
placements | Zwraca obiekt pollplacements. |
[nazwa lub identyfikator ankiety] | Możesz uzyskać dostęp do dowolnej ankiety za pomocą jej nazwy lub właściwości identyfikatora. {% assign poll = polls[Poll Name] %} {% assign poll = polls["41827a5c-33de-49b8-a0c7-439e6a02eb98"] %} |
Atrybuty Umieszczenie ankiet
Atrybut | opis |
---|---|
[nazwa lub identyfikator umieszczenia ankiety] | Możesz uzyskać dostęp do dowolnego umieszczenia ankiety za pomocą nazwy lub właściwości identyfikatora.{% assign placement = polls.placements[Placement Name or Id] %} {% assign placement = polls.placements[7677c5d4-406e-4b6c-907c-916ac17dba0f] %} |
Atrybuty Umieszczenie ankiet
Uwaga
Atrybut | opis |
---|---|
Nazwa/nazwisko | Zwraca pole Nazwa umieszczenia ankiety. |
placement_url | Adres URL, którego można użyć do pobierania umieszczenia ankiety w pełni renderowanego przez szablon. |
ankiety | Zwraca kolekcję obiektów ankiety związanych z umieszczeniem. Tagi iteracji i filtry tablicowe mogą być używane z tą kolekcją. |
random_url | Adres URL, którego można użyć do pobrania losowej ankiety z umieszczenia w pełni renderowanego przez szablon. |
submit_url | Adres URL, do którego wypełnione ankiety są przekazywane. |
Atrybuty ankiety
Uwaga
Atrybut | opis |
---|---|
has_user_voted | Zwraca wartość true, jeśli bieżący użytkownik (zalogowany lub anonimowy) wziął już udział w tej ankiecie. |
Nazwisko | Zwraca pole Nazwa dla ankiety. |
options | Zwraca kolekcję obiektów poll option związanych z ankietą. Tagi iteracji i jednostki mogą być używane z tą kolekcją. |
poll_url | Adres URL, którego można użyć do pobrania ankiety w pełni renderowanej przez szablon. |
pytanie | Zwraca pole Pytanie dla ankiety. |
submit_button_label | Zwraca ciąg, który może służyć do zastępowania etykiety przycisku Prześlij dla ankiety. |
submit_url | Adres URL, do którego wypełnione ankiety są przekazywane. |
user_selected_option | Zwraca obiekt polloption wybrany przez użytkownika (jeśli ten już głosował). |
votes | Zwraca liczbę głosów, które zostały stabelaryzowane dla ankiety. |
Atrybuty Opcja ankiety
Uwaga
Atrybut | opis |
---|---|
answer | Zwraca pole Odpowiedź dla ankiety. |
percentage | Zwraca procent głosów w ankiecie dla opcji jako liczbę dziesiętną między 0 i 100. |
votes | Zwraca liczbę głosów, które zostały stabelaryzowane dla opcji. |
żądanie
Zawiera informacje o bieżącym żądaniu HTTP.
{% assign id = request.params['id'] | escape %}
<a href={{ request.url | add_query: 'foo', 1 | escape }}>Link</a>
Uwaga
- Możesz dynamicznie tworzyć adresy URL w Liquid przy użyciu filtrów adresu URL.
- Adres URL użyty w polu request.url może być dowolną żądaną wartością i jest przechowywany do kolejnych żądań. Aby zachować prawidłową wartość w polu request.url, warto rozważyć użycie znacznika substytucji, częściowego adresu URL, takiego jak ~{WebFile path} lub przechowywanie adresu URL portalu w Ustawieniach witryny.
- Power Pages w wersji 9.3.8.x lub nowszej domyślnie będą zawierały filtr Liquid ucieczki dla użytkowników i żądania obiektów Liquid. Aby wyłączyć tę domyślną konfigurację i zezwolić na te obiekty Liquid bez ucieczki filtra Liquid, zobacz ustawienia witryny portalu - Site/EnableDefaultHtmlEncoding.
Atrybuty
Atrybut | Opis |
---|---|
parametry | Wartości nazwany parametr dla bieżącego żądania. params jest kombinacją parametrów ciągu zapytania adresu URL, parametrów formularza wpisu i plików cookie. |
Path | Ścieżka adresu URL bieżącego żądania. /profile/ |
path_and_query | Ścieżka i zapytanie adresu URL bieżącego żądania./profile/?foo=1&bar=something |
zapytanie | Część zapytania adresu URL bieżącego żądania. ?foo=1&bar=something |
adres URL | Pełny adres URL bieżącego żądania.https://www.example.com/profile/?foo=1&bar=something |
searchindex
Obiekt searchindex jest używany w tagach tabeli Dataverse i zapewnia dostęp do wyników zapytania.
{% searchindex query: 'support', page: params.page, page_size: 10 %}
{% if searchindex.results.size > 0 %}
<p>Found about {{ searchindex.approximate_total_hits }} matches:</p>
<ul>
{% for result in searchindex.results %}
<li>
<h3><a href={{ result.url | escape }}>{{ result.title | escape }}</a></h3>
<p>{{ result.fragment }}</p>
</li>
{% endfor %}
</ul>
{% else %}
<p>Your query returned no results.</p>
{% endif %}
{% endsearchindex %}
Atrybuty
Atrybut | opis |
---|---|
approximate_total_hits | Zwraca przybliżoną wartość wszystkich odwołań pasujących do zapytania indeksu. Ze względu na sposób działania indeksu wyszukiwania w odniesieniu do filtrowania zabezpieczeń i innych czynników uwzględnianych podczas projektowania, liczba ta jest tylko przybliżeniem i może wyglądać inaczej niż całkowita liczba wyników dostępnych dla bieżącego użytkownika w niektórych sytuacjach. |
Strona | Zwraca numer strony bieżącego zapytania. |
page_size | Zwraca maksymalny rozmiar strony bieżącego zapytania. Jeśli chcesz uzyskać rzeczywistą liczbę wyników zwracanych dla bieżącej strony (jako że może być ona mniejsza niż określony maksymalny rozmiar strony), powinieneś użyć results.size. |
Wyniki | Zwraca stronę wyników zapytania, jako obiekty wyniku indeksu wyszukiwania. |
Wyniki indeksu wyszukiwania
Atrybut | Opis |
---|---|
Encja | Bazowe encje dla wyniku. |
fragment | Istotny krótki fragment tekstu dla wyniku, z warunkami pasującymi do określonego zapytania zaznaczonymi przy użyciu tagu HTML <em>. Niektóre typy zapytań nie obsługują wyróżnionych fragmentów, są to na przykład zapytania rozmyte (~) i zapytania z symbolem wieloznacznym (). Właściwość ta będzie równa null w tych przypadkach. |
Id | Identyfikator tabeli Dataverse bazowego rekordu dla wyniku, jako ciąg. Na przykład 936DA01F-9ABD-4d9d-80C7-02AF85C822A8 |
logical_name | Nazwa logiczna tabeli Dataverse bazowego rekordu dla wyniku. Na przykład: adx_webpage |
numer | Liczba wyników, na wszystkich stronach wyników, począwszy od 1. Na przykład dla pierwszego wyniku na drugiej stronie wyników, dla strony o rozmiarze 10, wartość ta wyniesie 11. |
score | Ocena Lucene wyniku w postaci wartości zmiennoprzecinkowej. Wyniki zostaną zwrócone w kolejności uwzględniającej tę wartość. |
title | Tytuł wyniku. |
adres URL | Adres URL dla wyniku. Zazwyczaj będzie to — ale niekoniecznie — ścieżką bezwzględną dla bieżącej aplikacji, a nie pełnym adresem URL. Na przykład: /articles/article1/ |
ustawienia
Umożliwia ładowanie dowolnego ustawienia witryny po nazwie. Jeśli ustawienie o podanej nazwie nie zostanie znalezione, zostanie zwrócony wynik null.
Uwaga
Ustawienia są zwracane jako ciągi, ale możesz użyć filtry Typ, aby konwertować je do innych typów.
{{ settings[My Setting] }}
{% assign search_enabled = settings[Search/Enabled] | boolean %}
{% if search_enabled %}
Search is enabled.
{% endif %}
{% assign pagesize = settings['page size'] | integer | default: 10 %}
{% if pagesize > 10 %}
Page size is greater than 10.
{% endif %}
sitemap
Umożliwia dostęp do mapy witryny portalu.
<h1>{{ sitemap.root.title }}</h1>
<ul class=breadcrumb>
{% for crumb in sitemap.current.breadcrumbs %}
<li><a href={{ crumb.title }}>{{ crumb.title }}</a></li>
{% endfor %}
<li class=active>{{ sitemap.current.title }}</li>
</ul>
{% for child in sitemap.current.children %}
<a href={{ child.url }}>{{ child.title }}</a>
{% endfor %}
It's also possible to load a site map node by URL path:
{% assign node = sitemap[/content/page1/] %}
{% if node %}
{% for child in node.children %}
<a href={{ child.url }}>{{ child.title }}</a>
{% endfor %}
{% endif %}
Atrybuty mapy witryny
Atrybut | Opis |
---|---|
Bieżąca | Zwraca obiekt węzeł mapy witryny dla bieżącej strony. |
Element główny | Zwraca obiekt węzeł mapy witryny dla strony głównej witryny sieci Web. |
Atrybuty węzła mapy witryny
Atrybut | Opis |
---|---|
Linki do stron nadrzędnych | Zwraca nadrzędne obiekty węzła mapy witryny dla węzła, począwszy od głównego węzła mapy witryny kończąc na nadrzędnym. |
Elementy podrzędne | Zwraca podrzędne obiekty węzeł mapy witryny dla węzła. |
Opis | Opis/krótki opis treści dla węzła. (To pole może zawierać kod HTML.) |
Jednostka | Zwraca podstawowe encje węzła. Jeśli węzeł nie posiada bazowej tabeli, wartość ta będzie wynosić null. |
is_sitemap_ancestor | Zwraca true, jeśli węzeł mapy witryny jest elementem nadrzędnym bieżącego węzła, w przeciwnym razie zwraca false. |
is_sitemap_current | Zwraca true, jeśli węzeł mapy witryny jest węzłem bieżącym, w przeciwnym razie zwraca false. |
Nadrzędne | Zwraca nadrzędny obiekty węzeł mapy witryny dla węzła. Jeśli węzeł jest węzłem głównym, wartością nadrzędną będzie null. |
Nazwa | Tytuł węzła. |
adres URL | Adres URL węzła. |
znaczniki witryn
Umożliwia ładowanie dowolnego znacznika witryny po nazwie. Jeśli znacznik witryny istnieje, zostanie zwrócony obiekt znacznika witryny. Jeśli znacznik witryny o podanej nazwie nie zostanie znaleziony, zostanie zwrócony wynik null.
{{ sitemarkers[Login].url }}
{% assign my_sitemarker = sitemarkers["My Site Marker"] %}
{% if my_sitemarker %}
<a href={{ my_sitemarker.url }}>{{ my_sitemarker.adx_name }}</a>
{% else %}
Site marker My Site Marker does not exist.
{% endif %}
Atrybuty znaczników witryn
Atrybut | opis |
---|---|
adres URL | Adres URL docelowego znacznika witryny. |
[nazwa logiczna atrybutu] | Możesz uzyskać dostęp do dowolnego atrybutu rekordu docelowego znacznika witryny Dataverse po nazwie logicznej. Na przykład {{ sitemarker.adx_name }} |
fragmenty kodu
Umożliwia ładowanie dowolnych fragmentów kodu zawartości według nazwy. Jeśli fragment kodu o podanej nazwie nie zostanie znaleziony, zostanie zwrócony wynik null.
{{ snippets[Header] }}
{% assign footer = snippets[Footer] %}
{% if footer %}
{{ footer }}
{% else %}
No footer snippet was found.
{% endif %}
tablerowloop
Zawiera właściwości, które są przydatne w bloku pętli Tagi iteracji.
Uwaga
tablerowloop mogą być używane tylko w ramach tagu Tagi iteracji.
Atrybuty
Atrybut | Opis |
---|---|
Col | Zwraca indeks bieżącego wiersza, począwszy od 1. |
col0 | Zwraca indeks bieżącego wiersza, począwszy od 0. |
col_first | Zwraca true, jeśli bieżąca kolumna jest pierwszą kolumną w wierszu, zwraca false, jeśli tak nie jest. |
col_last | Zwraca true, jeśli bieżąca kolumna jest ostatnią kolumną w wierszu, zwraca false, jeśli tak nie jest. |
Pierwsze | Zwraca true, jeśli jest to pierwsza iteracja pętli. Zwraca false, jeśli nie jest to pierwsza iteracja. |
Indeks | Pozycja bieżącego elementu w kolekcji, gdzie pierwszy element znajduje się na pozycji 1. |
index0 | Pozycja bieżącego elementu w kolekcji, gdzie pierwszy element znajduje się na pozycji 0. |
Ostatnia | Zwraca true, jeśli jest to ostatnia iteracja pętli. Zwraca false, jeśli nie jest to ostatnia iteracja. |
Length | Zwraca liczbę iteracji pętli ߝ liczba elementów w kolekcji dla której ma miejsce iteracja. |
Rindex | Liczba elementów pozostałych w pętli (długość - indeks) gdzie 1 stanowi indeks ostatniego elementu. |
rindex0 | Liczba elementów pozostałych w pętli (długość - indeks) gdzie 0 stanowi indeks ostatniego elementu. |
Użytkownika
Odnosi się do bieżącego użytkownika portalu, umożliwiając dostęp do wszystkich atrybutów podlegającego rekordu kontaktu Dataverse. Jeśli żaden użytkownik nie jest zalogowany, zmienna ta będzie miała wartość null.
Użytkownik jest obiektem encja.
{% if user %}
Hello, {{ user.fullname | escape }}!
{% else %}
Hello, anonymous user!
{% endif %}
Uwaga
Power Pages w wersji 9.3.8.x lub nowszej domyślnie będą zawierały filtr Liquid ucieczki dla użytkowników i żądania obiektów Liquid. Aby wyłączyć tę domyślną konfigurację i zezwolić na te obiekty Liquid bez ucieczki filtra Liquid, zobacz ustawienia witryny portalu - Site/EnableDefaultHtmlEncoding.
Atrybuty
Oprócz posiadania wszystkich atrybutów obiektu encja, użytkownik posiada również poniższe atrybuty.
Atrybut | Opis |
---|---|
role | Zwraca role, do których należy użytkownik, jako tablica.{% if user.roles contains 'Administrators' %} User is an administrator. {% endif %} Uwaga: Możesz również użyć filtru, aby przetestować członkostwo has_role w poszczególnych rolach. |
basic_badges_url | Zwraca adres url usługi do odzyskania znaczków użytkownika. Aby renderować znaczki dla użytkownika musisz zawrzeć tag z atrybutami "data-badge" i "data-uri". Aby wyrenderować znaczki bieżącego użytkownika: <div data-badge data-uri='{{user.basic_badges_url }}'></div> Aby wyrenderować znaczki użytkownika za pomocą identyfikatora (zmienna nazwa użytkownika): `<div data-badge data-uri='{{user.basic_badges_url |
linki sieci Web
Umożliwia ładowanie dowolnego łącza sieci Web po nazwie lub identyfikatorze.
Jeśli istnieje zestaw łączy sieci Web, zostanie zwrócony obiekt zestaw łączy sieci Web. Jeśli zestaw łączy sieci Web o podanym identyfikatorze nie zostanie znaleziony, zwrócony zostanie wynik null.
<!-- Load web link set by ID -->
{{ weblinks[page.adx_navigation.id].name }}
<!-- Load web link set by name -->
{% assign nav = weblinks[Primary Navigation] %}
{% if nav %}
<h1>{{ nav.title | escape }}</h1>
<ul>
{% for link in nav.weblinks %}
<li>
<a href={{ link.url | escape }} title={{ link.tooltip | escape }}>
{% if link.image %}
<img src={{ link.image.url | escape }} alt={{ link.image.alternate_text | escape }} />
{% endif %}
{{ link.name | escape }}
</a>
</li>
{% endfor %}
</ul>
{% endif %}
Atrybuty zestawu łączy sieci Web
Uwaga
Zestaw łączy sieci Web to obiekt encja, posiadający wszystkie te same atrybuty, oprócz tych:
Atrybut | Podpis |
---|---|
Treść reklamy | Kopia HTML zestawu łączy sieci Web. |
Nazwa | Nazwa zestawu łączy sieci Web. |
Tytuł | Tytuł zestawu łączy sieci Web. |
Linki sieci Web | Tablica obiektów łączy sieci Web skojarzonych z zestawem łączy sieci Web. |
[nazwa logiczna atrybutu] | Możesz uzyskać dostęp do dowolnego atrybutu rekordu Dataverse zestawu łączy sieci Web po nazwie logicznej. Na przykład {{ weblinkset.createdon }} |
Atrybuty łącza sieci Web
Uwaga
Zestaw łączy sieci Web to obiekt encja, posiadający wszystkie te same atrybuty, oprócz tych:
Atrybut | Podpis |
---|---|
Podpis | Opis HTML łącza sieci Web. |
display_image_only | Atrybut wartości logicznej wskazujący, czy łącze sieci Web ma być wyświetlane jako obraz, bez tekstu łącza. |
display_page_child_links | Atrybut wartości logicznej wskazujący, czy łącze sieci Web powinno pokazywać łącza do stron podrzędnych sitemap połączonej strony, w formie łączy podrzędnych. |
Image | Obiekt obraz łącza sieci Web dla tego łącza. Ten atrybut będzie równy null, jeśli obraz nie jest obecny. |
is_external | Atrybut wartości logicznej wskazujący, czy docelowy adres URL łącza sieci Web prowadzi do zewnętrznej witryny (a nie do wewnętrznej strony portalu). |
is_sitemap_ancestor | Zwraca true, jeśli adres URL łączy sieci Web zawiera odwołania do elementu nadrzędnego bieżącego węzła mapy witryny, w przeciwnym razie zwraca false. |
is_sitemap_current | Zwraca true, jeśli adres URL łączy sieci Web zawiera odwołania do bieżącego węzła mapy witryny, w przeciwnym razie zwraca false. |
Nazwisko | Nazwa/tytuł łącza sieci Web. |
Nofollow | Atrybut wartości logicznej wskazujący, czy łącze sieci Web powinno być oznaczone jako rel=nofollow. |
open_in_new_window | Atrybut wartości logicznej wskazujący, czy łącze sieci Web powinno zostać po wybraniu otwarte w nowym oknie/karcie przeglądarki. |
Etykietka narzędzia | Tekst etykietki narzędzia dla łącza sieci Web. |
Adres URL | Adres URL łącza sieci Web. |
Linki sieci Web | Tablica podrzędnych obiektów łączy sieci Web skojarzonych z łączem sieci Web. |
[nazwa logiczna atrybutu] | Możesz uzyskać dostęp do dowolnego atrybutu rekordu Dataverse łącza sieci Web po nazwie logicznej. Na przykład {{ weblink.createdon }} |
Atrybuty obrazu łącza sieci Web
alternate_text | Alternatywny tekst dla obrazu. |
---|---|
Height | Liczba całkowita zawierająca określoną wysokość obrazu. Jeśli nie dostarczono żadnej wartości wysokości, ten atrybut będzie równy null. |
adres URL | Adres URL obrazu. |
Width | Liczba całkowita zawierająca określoną szerokość obrazu. Jeśli nie dostarczono żadnej wartości szerokości, ten atrybut będzie równy null. |
witryna sieci Web
Odnosi się do witryny sieci Web portalu, umożliwiając dostęp do wszystkich atrybutów rekordu witryny Dataverse (adx_website) dla portalu.
Uwaga
Witryna sieci Web to obiekt encja, ze wszystkimi takimi samymi atrybutami.
Kod
{{ website.adx_name }} ({{ website.id }})
Wyjście
Community Portal (936DA01F-9ABD-4d9d-80C7-02AF85C822A8)
Atrybuty
W poniższej tabeli wymieniono atrybuty tego tagu, których można użyć w celu zastąpienia domyślnych ustawień, aby uniknąć buforowania.
Wartość domyślna | Zamiennik (zapobiega buforowaniu) | Przykład |
---|---|---|
sign_in_url | sign_in_url_substitution | Domyślnie: website.sign_in_url: /en-US/SignIn?returnUrl=%2Fen-US%2F Podstawianie (unikanie buforowania): website.sign_in_url_substitution: /en-US/SignIn?returnUrl=%2Fen-US%2Fsubstitute-page%2F (w tym przykładzie „substitute-page” zastępuje domyślny buforowany adres URL.) |
sign_out_url | sign_out_url_substitution | Domyślnie: website.sign_out_url: /en-US/Account/Login/LogOff?returnUrl=%2Fen-US%2F Podstawianie (unikanie buforowania): website.sign_out_url_substitution: /en-US/Account/Login/LogOff?returnUrl=%2Fen-US%2Fsubstitute-page%2F (w tym przykładzie „substitute-page” zastępuje domyślny buforowany adres URL.) |