可用的 Liquid 物件

Liquid 物件包含輸出動態內容至頁面的屬性。 例如,pageobject 擁有名為 title 的屬性,可用來輸出目前頁面的標題。

若要依名稱存取物件屬性,請使用點 。 若要轉譯範本中物件的屬性,請將它包裝在 {{ 和 }} 中。

{{ page.title }}

物件的屬性也可以使用字串名稱和 [] 存取。 這在某些情況下會很實用,例如所要的屬性為動態決定,或使用 . 語法時,屬性名稱包含可能無效的字元、空格、 特殊字元等。

{{ page["title"] }}

{% assign attribute_name = "Name with spaces" %}

{{ object[attribute_name] }}

以下物件可以在任何範本中的任何地方使用和存取。

物件 描述
實體 可讓您依識別碼載入任何 Dynamics 365 實體。 其他資訊: 實體
now 表示目前 UTC 時間 (範本轉譯時) 的日期/時間物件。
注意:此值是由入口網站 Web 應用程式快取,不會每次都重新整理。 其他資訊: 日期篩選​​
頁面 是指目前入口網站要求頁面。 page 物件提供存取某些項目的方式,像是目前頁面的導覽路徑標示、目前頁面的標題或 URL,以及基礎 Dynamics 365 記錄的任何其他屬性或相關實體。 其他資訊: 頁面
params 方便的 request.params 捷徑。 其他資訊: 要求
request 包含有關目前 HTTP 要求的資訊。 其他資訊: 要求
settings 可讓您依名稱載入任何網站設定。 其他資訊: 設定設定入口網站的網站設定
sitemap 允許存取入口網站的網站地圖。 其他資訊: 網站地圖
sitemarkers 可讓您依名稱載入任何網站標記。 其他資訊: 網站標記
snippets 可讓您依名稱載入任何內容程式碼片段。 其他資訊: 使用內容程式碼片段自訂內容
user 是指目前入口網站使用者,允許存取基礎 Dynamics 365 連絡人記錄的任何屬性。 如果沒有使用者登入,此變數將會是 null。 其他資訊: Liquid 類型
weblinks 可讓您依名稱或識別碼載入任何網頁連結組。 其他資訊: 網頁連結
website 是指入口網站的網站記錄,允許存取入口網站的 Dynamics 365 網站 (adx_website) 記錄的所有屬性。 其他資訊: 網站

所有 Liquid 物件

ads

blogs

實體

entitylist

entityview

events

forloop

forums

知識

page

polls

request

searchindex

settings

sitemap

sitemarkers

snippets

tablerowloop

user

weblinks

website

ads

提供存取和呈現廣告的功能。

ads 物件可讓您選取特定廣告或廣告位置:

<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>

廣告屬性

屬性 描述
placements 傳回 adplacements 物件。
[ad placement 或 id] 您可以依 Name 或 ID 屬性存取任何廣告。
{% assign ad = ads["Ad Name"] %}
{% assign ad = ads["da8b8a92-2ee6-476f-8a21-782b047ff460"] %}

廣告位置屬性

屬性 描述
[ad placement name 或 id] 您可以依 Name 或 ID 屬性存取任何 adplacement。
{% assign placement = ads.placements["Placement Name or Id"] %}
{% assign placement = ads.placements["2423d713-abb3-44c3-8a7d-c445e16fccad"] %}

廣告位置屬性

ad placement 是實體物件,包含所有相同屬性,除了下列之外。

屬性 描述
Ads 傳回與位置相關的 ad 物件的集合。 反覆項目標籤陣列篩選可搭配此集合使用。
Name 傳回廣告位置的名稱欄位。
placement_url 可用來擷取藉由範本完整轉譯的廣告位置的 URL。
random_url 可用來擷取藉由範本完整轉譯的位置中隨機廣告的 URL。

廣告屬性

備註

ad 是實體物件,包含所有相同屬性,除了下列之外。

屬性 描述
ad_url 可用來擷取藉由範本完整轉譯的廣告的 URL。
複製 傳回廣告的複製欄位。
image 傳回廣告的影像物件 (如果有)。
名稱 傳回廣告的名稱欄位。
open_in_new_window 如果 redirect_url 所指定的 URL 應在新視窗中開啟,則傳回 true。
redirect_url 使用者按一下廣告後將被導向的 URL。

廣告影像屬性

屬性 描述
alternate_text 傳回文字,預期會出現在標籤的 alt 屬性中。
height 傳回影像的高度 (像素)。
URL 傳回影像的 URL 來源。
width 傳回影像的寬度 (像素)。

blogs

提供存取和呈現部落格及部落格文章的功能。

blogs 物件可讓您選取特定部落格或部落格文章。

{% 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>

&ndash;

<a href="{{ post.author_url }}"> {{ post.author_name }} </a>

&ndash;

<a href="{{ post.application_path }}#comments">

<span class="fa fa-comment" aria-hidden="true"></span> {{ post.comment_count }}

</a>

</div>

</li>

{% endfor %}

</ul>

</div>

blogs 物件

blogs 物件可讓您存取入口網站上的任何特定部落格,或存取入口網站上的所有部落格文章 (任何部落格)。

下表說明與 blogs 物件相關的屬性。

屬性 描述
posts 傳回 blogposts 物件,包含入口網站中的所有部落格文章。
[blog name 或 id] 您可以依 Name 或 ID 屬性存取任何部落格。
{% assign blog = blogs["Blog Name"] %}                             

{% assign blog = blogs["da8b8a92-2ee6-476f-8a21-782b047ff460"] %}  |

blog 物件

blog 物件可讓您使用單一部落格,如此就能存取該部落格的文章。

下表說明與 blog 物件相關的各種屬性。

屬性 描述
posts 傳回 blogposts 物件,包含部落格的所有部落格文章。
名稱 部落格的名稱。
標題 部落格的標題。
URL 部落格的 URL。

blogposts 物件

blogposts 物件可讓您存取部落格文章物件的集合。 您可以排列部落格文章的順序,並使用 Liquid 篩選進行分頁:

{% assign blogposts = blogs.posts | order_by “adx_name”, “desc” | paginate: 0,4 | all %} 請注意,blogs.posts.all 也是有效的方式,可取得所有部落格文章 blogs.posts | from_index: 0 | take: 2 也可行

下表說明與 blogposts 物件相關的各種屬性。

屬性 描述
全部 傳回集合中的所有 blogpost 物件

blogpost 物件

指出單一部落格文章。

下表說明與 blogpost 物件相關的各種屬性。

屬性 描述
URL 文章的 URL。
content 傳回文章的內容欄位。
content 傳回文章的內容欄位。
author 傳回文章的 authorf (單純是連絡人 entity 物件)。
標題 文章的標題。
comment_count 傳回整數值,表示所指文章有多少篇留言的計數。
publish_date 文章發佈的日期。

實體

可讓您依識別碼載入任何 Dynamics 365 實體。 如果實體存在,將會傳回實體物件。 如果找不到具有特定識別碼的實體,則會傳回 Liquid 類型

{% assign account = entities.account['936DA01F-9ABD-4d9d-80C7-02AF85C822A8'] %}

{% if account %}

{{ account.name }} ({{ account.statecode.label }})

{% endif %}

{% assign entity_logical_name = 'contact' %}

{% assign contact = entities[entity_logical_name][request.params.contactid] %}

{% if contact %}

{{ contact.fullname }} ({{ contact.parentcustomerid.name }})

{% endif %}

實體

實體物件可讓您存取 Dynamics 365 實體記錄的屬性。

屬性 描述
ID 實體的 GUID 識別碼,做為字串。 例如 936DA01F-9ABD-4d9d-80C7-02AF85C822A8
logical_name 實體的 Dynamics 365 邏輯名稱。
附註​​ 載入任何與實體關聯的附註 (annotation),從最舊排列到最新 (createdon)。 附註會做為附註物件傳回。
權限 載入實體的實體權限判斷提示結果。 結果會做為權限物件傳回。
URL 傳回實體的 Dynamics 365 入口網站內容管理系統 URL 路徑。 如果實體在目前網站中沒有有效的 URL,則傳回 null。 一般而言,這只會針對已整合到入口網站 CMS 內的特定實體類型傳回值,除非您已自訂應用程式中的 URL 提供者。
[屬性或關聯名稱] 您可以依邏輯名稱存取 Dynamics 365 實體的任何屬性。 {{ entity.createdon }}{% assign attribute_name = 'name' %}{{ entity[attribute_name] }}
大部分實體屬性的值會直接對應到 Liquid 類型:兩個選項欄位對應到布林值、文字欄位對應到字串、數值/貨幣欄位對應到數字、日期/時間欄位對應到日期物件。 但是,有些屬性類型會做為物件傳回:
  • 查詢 (實體參考) 欄位會做為實體參考物件傳回。
  • 選項組/挑選清單欄位會做為選項組值物件傳回。
  • 您也可以依關聯結構描述名稱載入任何相關的實體。
  • {{ page.adx_webpage_entitylist.adx_name }}若關聯是自反關聯性 (也就是自我參考),則會傳回自反關聯性物件。 (否則,所要的結果會模棱兩可。){{ page.adx_webpage_webpage.referencing.adx_name }}
    附註:在單一範本中載入大量相關實體,或存取大量關聯,可能對範本轉譯的效能造成不良影響。 避免在陣列中於迴圈內載入每一個項目的相關實體。 盡可能使用 Dynamics 365 實體標籤載入實體的集合。

實體參照

查詢屬性值會做為實體參考物件傳回,包含下列屬性。

屬性 描述
ID 參考的實體的 GUID 識別碼,做為字串。
例如 936DA01F-9ABD-4d9d-80C7-02AF85C822A8
logical_name 參考的實體的 Dynamics 365 邏輯名稱。
名稱 參考的實體的主要名稱屬性。

附註

附註是實體物件,可讓您存取 annotation 記錄的屬性和關聯。 除了實體物件的所有屬性之外,附註還有下列額外的屬性。

屬性 描述
documentbody 載入附註 annotation 記錄的 documentbody 屬性,做為 Base64 編碼字串。 此屬性的內容可能很大,不會與其餘附註屬性一起載入,僅在需要時載入。
附註:使用 documentbody 屬性可能對範本轉譯效能造成不良影響,因此應小心使用。
如有可能,請改用 url 屬性提供附註附件的連結。
URL 傳回內建入口網站註解附件處理常式的 URL 路徑。 如果使用者具有權限,且附註有附加檔案,要求此 URL 將會下載附註檔案附件。

選項組值

選項組/挑選清單屬性值會做為實體參考物件傳回,包含下列屬性。

屬性 描述
標籤 選項組/挑選清單屬性值的當地語系化標籤。 例如 Active
選項組/挑選清單屬性值的整數值。 例如 0

實體權限

實體權限物件可讓您存取針對實體彙總的權限判斷提示結果。

屬性 描述
can_append 如果目前使用者具有附加記錄至此記錄關聯的權限,則傳回 true。 否則會傳回 false。
can_append_to 如果目前使用者具有附加此記錄至其他實體的關聯的權限,則傳回 true。 否則會傳回 false。
can_create 如果目前使用者具有建立此實體類型的新記錄的權限,則傳回 true。 否則會傳回 false。
can_delete 如果目前使用者具有刪除此記錄的權限,則傳回 true。 否則會傳回 false。
can_read 如果目前使用者具有讀取此記錄的權限,則傳回 true。 否則會傳回 false。
can_write 如果目前使用者具有更新此記錄的權限,則傳回 true。 否則會傳回 false。
rules_exist 如果此物件代表的權限結果是明確定義的權限規則的結果,則傳回 true。 如果是在缺少明確定義權限的情況下的預設結果,則傳回 false。

自反關聯性

嘗試在實體上載入自反 (也就是自我參考) 關聯性,會做為物件傳回,且包含下列屬性。

屬性 描述
is_reflexive 傳回 true。 可用來測試關聯所傳回的物件是否為自反關聯性物件。
referenced 傳回特定關聯的參考實體陣列。
referencing 傳回特定關聯的參考實體。 如果沒有參考實體存在,則傳回 null。 如果關聯為多對多 (N:N),則傳回參考實體陣列。

entitylist

entitylist 物件是在 Dynamics 365 實體標籤內使用。 它可讓您存取特定實體清單的所有屬性。

屬性

備註

實體

屬性 描述
create_enabled 如果針對實體清單設定建立新記錄,則會傳回 true。 否則會傳回 false。
create_url 針對實體清單的建立連結/按鈕,傳回設定的 URL 路徑。
detail_enabled 如果針對實體清單設定個別記錄的詳細檢視,則傳回 true。 否則會傳回 false。
detail_id_parameter 傳回用於記錄識別碼的查詢字串參數名稱,當建構記錄詳細檢視 URL 時。 請參閱 URL 篩選,以取得有關使用 Liquid 篩選建構 URL 的詳細資料。 例如 id
detail_label 針對實體清單的詳細檢視連結/按鈕,傳回設定的當地語系化標籤。
detail_url 針對實體清單的詳細檢視連結/按鈕,傳回設定的 URL 路徑。
empty_list_text 當實體清單檢視未傳回結果時,傳回設定好要顯示的當地語系化文字。
enable_entity_permissions 如果實體權限篩選已對此實體清單啟用,則傳回 true。 否則會傳回 false。
entity_logical_name 傳回要由此實體清單顯示的記錄的 Dynamics 365 實體邏輯名稱。 例如 contact
filter_account_attribute_name 傳回對 account 查詢的屬性邏輯名稱,將由目前入口網站使用者的上層客戶用來篩選結果記錄。 例如 accountid
filter_apply_label 傳回設定的當地語系化標籤,要用於套用進階屬性篩選至實體清單結果的連結/按鈕。
filter_definition 針對實體清單傳回 JSON 屬性篩選定義。 請參閱實體清單篩選,以取得如何使用 metafilters Liquid 篩選處理此定義的詳細資料。
filter_enabled 如果進階屬性篩選已針對實體清單啟用,則傳回 true。 否則會傳回 false。
filter_portal_user_attribute_name 傳回對 contact 查詢的屬性邏輯名稱,將由目前入口網站使用者的連絡人用來篩選結果記錄。 例如 contactid
filter_website_attribute_name 傳回對 adx_website 查詢的屬性邏輯名稱,將由目前入口網站用來篩選結果記錄。 例如 adx_websiteid
language_code 傳回 Dynamics 365 整數語言碼,將用來為此實體清單選取所有當地語系化的標籤。
page_size 針對實體清單傳回設定的結果頁面大小。
primary_key_name 傳回要由此實體清單顯示的記錄的主索引鍵屬性邏輯名稱。
search_enabled 如果已對此實體清單啟用搜尋,則傳回 true。 否則會傳回 false。
search_placeholder 針對實體清單搜尋欄位預留位置,傳回設定的當地語系化文字。
search_tooltip 針對實體清單搜尋工具提示,傳回設定的當地語系化文字。
檢視表 針對實體清單傳回可用的檢視,做為實體清單檢視物件。
[屬性邏輯名稱] 您可以依邏輯名稱存取實體清單 (adx_entitylist) Dynamics 365 記錄的任何屬性,方法與實體相同。 例如 {{ entitylist.adx_name }}

實體清單檢視表屬性

屬性 描述
columns 傳回檢視表的欄,做為實體清單檢視欄物件。
entity_logical_name 針對檢視表中所包含記錄,傳回 Dynamics 365 實體邏輯名稱。 例如 contact
ID 傳回檢視表的 GUID 識別碼。
language_code 傳回 Dynamics 365 整數語言碼,將用來選取檢視表的所有當地語系化的標籤 (欄標題等)。
名稱 傳回檢視表的 Dynamics 365 顯示名稱。
primary_key_logical_name 針對檢視表中所包含記錄,傳回 Dynamics 365 實體主索引鍵邏輯名稱。 例如 contactid
sort_expression 傳回檢視表的預設排序運算式。 例如 name ASC、createdon DESC

實體清單檢視表欄屬性

屬性 描述
attribute_type 傳回欄的 Dynamics 365 屬性類型名稱,做為字串。 例如 Lookup、Picklist、String、Boolean、DateTime
logical_name 傳回欄的 Dynamics 365 屬性邏輯名稱。 例如 createdon
名稱 傳回欄的當地語系化 Dynamics 365 顯示名稱。 例如,建立於
sort_ascending 傳回排序運算式字串,用於以遞增順序排序欄。 例如 createdon ASC
sort_descending 傳回排序運算式字串,用於以遞減順序排序欄。 例如 createdon DESC
sort_disabled 如果停用欄的排序,則傳回 true。 否則會傳回 false。
sort_enabled 如果啟用欄的排序,則傳回 true。 否則會傳回 false。
width 傳回設定的欄寬 (像素)。

entityview

entityview 物件是在 entityview 標籤中使用,並且提供存取檢視表中繼資料的方式,以及檢視結果記錄。

屬性

屬性 描述
columns 傳回檢視表中的欄,做為 entitylist 檢視欄物件。
entity_permission_denied 傳回 true,如果存取檢視結果因為目前使用者的實體權限不足而遭拒。 傳回 false,如果授與檢視結果的讀取權限。
entity_logical_name 檢視結果記錄的 Dynamics 365 實體邏輯名稱。 例如 contact
first_page 檢視結果第一頁的頁碼。 這會是 1,除非沒有傳回結果,如此就會是 null。
ID 定義此 entityview 的 Dynamics 365 檢視表的 GUID ID。
language_code Dynamics 365 整數語言碼,用來載入目前檢視表的當地語系化標籤。
last_page 檢視結果最後一頁的頁碼。 如果未傳回任何結果,這會是 null。
名稱 定義此 entityview 的 Dynamics 365 檢視表的名稱,例如使用中連絡人。
next_page 檢視結果下一頁的頁碼。 如果沒有下一頁結果,這會是 null。
檢視結果目前頁面的頁碼。
pages 傳回頁碼陣列,包含目前檢視表的所有結果頁面。
page_size 針對目前檢視表每頁傳回的結果數目。
previous_page 檢視結果下一頁的頁碼。 如果沒有上一頁結果,這會是 null。
primary_key_logical_name 此檢視表結果實體的主索引鍵屬性的 Dynamics 365 邏輯名稱。 例如 contactid。
記錄 檢視表的結果記錄的目前頁面,做為實體物件。
sort_expression 檢視表的預設排序運算式。 例如 nameASC、createdon DESC。
total_pages 檢視表的結果總頁數。
total_records 檢視表的結果總數 (包含所有頁面)。

事件

提供存取和呈現事件的功能。 events 物件可讓您選取特定事件或所有事件。

events 物件

events 物件可讓您存取入口網站上的任何特定事件,或存取入口網站上的所有事件 (任何事件)。

events 物件有下列屬性:

屬性 描述
occurences 傳回 eventoccurancessobject,包含入口網站中所有出現的事件。
[event name 或 id] 您可以依 Name 或 ID 屬性存取任何事件。
{% assign event = events["事件名稱"] %}
{% assign event = events["da8b8a92-2ee6-476f-8a21-782b047ff460"] %}

event 物件

event 物件可讓您使用單一事件,如此就能存取該事件的排程和出現位置。

event 物件有下列屬性:

屬性 描述
occurences 傳回 eventoccurrencesobject,包含事件的所有出現位置。
名稱 事件的名稱。
URL 事件的 URL。

eventoccurences 物件

eventoccurrences 物件可讓您存取 event occurrences 物件的集合。 您可以排列物件的出現位置,並指定要擷取該事件的日期範圍,以及使用 Liquid 篩選進行分頁

{% assign occurances = event.occurrences.from[today].to[advance_date] %}

請注意,

{% assign occurances = event.occurrences.min[today].max[advance_date] %}

也可以。

下列屬性與 eventoccurrences 物件相關

屬性 描述
全部 傳回集合中的所有 eventoccurance 物件。

eventoccurence 物件

代表事件出現單次。 以下提供關聯的屬性:

屬性 描述
URL 出現位置的 URL。
is_all_day_event 是否為全天活動?
start_time 事件的開始時間。
end_time 事件的結束時間。

forloop

包含反覆項目標籤迴圈區塊內實用的屬性。

備註

forloop 只能在反覆項目標籤標籤內使用。

代碼

{% for child in page.children %}

{% if forloop.first %}

This is the first child page!

{% else %}

This is child page number {{ forloop.index }}.

{% endif %}

{% endfor %}

輸出

This is the first child page!

This is child page number 2.

This is child page number 3.

屬性

屬性 描述
第一個 如果是迴圈的第一個反覆項目,則傳回 true。 如果不是第一個反覆項目,則傳回 false。
索引 目前項目在集合中的位置,其中第一個項目的位置為 1。
index0 目前項目在集合中的位置,其中第一個項目的位置為 0。
最後一頁 如果是迴圈的最後一個反覆項目,則傳回 true。 如果不是最後一個反覆項目,則傳回 false。
length 傳回迴圈的反覆項目數,也就是集合中要反覆查詢的項目數。
rindex 迴圈中剩餘的項目數 (長度 - 索引),其中 1 是最後一個項目的索引。
rindex0 迴圈中剩餘的項目數 (長度 - 索引),其中 0 是最後一個項目的索引。

forums

提供存取和呈現論壇及論壇討論串的功能。 請注意,使用 Liquid 呈現論壇資料的功能會延伸至貼文,但為了建立討論串的新貼文,您必須使用內建所述功能的 ASP.NET 網頁表單頁面範本 (例如,預設的「論壇討論串」和「論壇貼文」頁面範本)。

forums 物件可讓您選取論壇或論壇討論串:

<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>

forums 物件

forums 物件可讓您存取入口網站上的任何特定論壇,或存取入口網站上的所有論壇討論串 (任何論壇)。

forum 物件可讓您使用單一論壇,如此就能存取該論壇的討論串。

forumthreads 物件可讓您存取 forumthread 物件的集合。 您可以排列論壇討論串的順序,並使用 Liquid 篩選進行分頁。

{% assign threads = forum.threads | order_by "adx_name", "desc" | paginate: 0,4 | all %}

單一論壇討論串

forumthreads 物件可讓您存取 forumthread 物件的集合。

屬性

屬性 描述
threads 傳回 forumthreads 物件,包含入口網站中的所有 forumthread 物件。
全部 傳回入口網站中的所有 forum 物件。 請注意,website.forums 也是同等。
thread_count 傳回整數值,表示整個網站中有多少個討論串的計數。
post_count 傳回整數值,表示入口網站中貼文的總數。
[forum name 或 id] 您可以依 Name 或 ID 屬性存取任何論壇。
`{% assign forum = forums["Forum Name"] %}
{% assign forum = forums["da8b8a92-2ee6-476f-8a21-782b047ff460"] %}

forum 物件

屬性

備註

實體

屬性 描述
threads 傳回 forumthreads 物件,包含論壇的所有討論串。
名稱 論壇的名稱。
thread_count 傳回整數值,表示論壇中有多少個討論串的計數。
post_count 傳回整數值,表示整個論壇中有多少篇貼文的計數。

forumthreads 物件

屬性

屬性 描述
全部 傳回集合中的所有 forumthread 物件。

forumthread 物件

屬性

備註

實體

屬性 描述
posts 傳回 forumposts 物件,包含討論串的所有論壇貼文。
author 傳回對話的 author (單純是連絡人 entity 物件)。
latest_post 傳回討論串中最新的貼文。
first_post 傳回討論串中第一篇貼文。
post_count 傳回整數值,表示討論串中有多少篇貼文的計數。
is_answered 討論串是否有回覆?
is_sticky 討論串是否為自黏討論串?

forumposts 物件

屬性

屬性 描述
全部 傳回集合中的所有 forumthread 物件。

單一論壇貼文

屬性

備註

實體

屬性 描述
author 傳回文章的 author (單純是連絡人 entity 物件)。
content 貼文的內容。
is_answer 這篇貼文是否為討論串的回覆?

知識

提供 Dynamics 365 knowledgearticle 和 category 實體記錄的存取權,以在入口網站中轉譯文章和類別。

屬性

屬性 描述
文章 傳回包含入口網站中可用 knowledgearticle 實體記錄之多個 article 物件的一個 articles 物件。
類別 傳回包含入口網站中可用 category 實體記錄之多個 category 物件的一個 categories 物件。

articles 物件

articles 物件可讓您存取 article 物件的集合。 您可以排列文章的順序,並使用 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 %}

屬性

屬性 描述
常用 傳回包含最多次檢視的 article 物件集合。 {% assign popular_articles = knowledge.articles.popular %}
最近 傳回包含上次修改日期的 article 物件集合。 {% assign recent_articles = knowledge.articles.recent %}
熱門 傳回包含評等最高的 article 物件集合。 {% assign top_articles = knowledge.articles.top %}

篩選

下列篩選可以接受頁面大小及語言的選用參數。 第一個參數是要擷取的數字或記錄。 預設頁面大小為 5。 第二個參數是擷取特定語言文章的語言代碼。 篩選可結合其他 Liquid 篩選 使用。

{% assign page_size = 5 %}
{% assign language_code = website.selected_language.code %}
{% assign recent_articles = knowledge.articles | recent: page_size, language_code %}
屬性 描述
常用 傳回包含最多次檢視的 article 物件集合。 {% assign popular_articles = knowledge.articles \| popular: 10, en-US %}
最近 傳回包含上次修改日期的 article 物件集合。 {% assign recent_articles = knowledge.articles \| recent: 5 %}
熱門 傳回包含評等最高的 article 物件集合。 {% assign top_articles = knowledge.articles \| top: 3, en-US %}

categories 物件

categories 物件可讓您存取 category 物件的集合。 您可以排列類別的順序,並使用 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 %}

屬性

屬性 描述
最近 傳回包含上次修改日期的 category 物件集合。
top_level 傳回無上層類別的 category 物件集合。

篩選

下列篩選可以接受指出頁面大小的選用參數。 預設頁面大小為 5。 篩選可結合其他 Liquid 篩選 使用。

{% assign page_size = 5 %}
{% assign recent_categories = knowledge.categories | recent: page_size %}
屬性 描述
最近 傳回包含上次修改日期的 category 物件集合。 您可以提供參數 {% assign recent_categories = knowledge.categories \| recent: 10 %}
top_level 傳回無上層類別的 category 物件集合。 {% assign root_categories = knowledge.categories \| top_level %}

article 物件

article 物件可讓您使用單一 knowledgearticle 在入口網站顯示該 article 的詳細資料。

屬性

article 是 實體 物件,包含所有相同屬性,除了下列之外。

屬性 描述
article_public_number 文章的文章公開編號。
comment_count 所指文章有多少篇留言的計數整數值。
content 文章內容。
current_user_can_comment 傳回布林值,表示目前使用者是否可以在文章上留言。
is_rating_enabled 傳回布林值,表示是否啟用文章評等。
關鍵字 文章關鍵字。
名稱 文章標題的替代別名。
評等 文章的十進位評等值。
標題 文章的標題。
view_count 文章檢視次數的整數值。

category 物件

category 物件可讓您使用單一 category 在入口網站顯示其詳細資料。

屬性

category 是 實體 物件,包含所有相同屬性,除了下列之外。

屬性 描述
categorynumber 類別的類別編號。
名稱 類別標題的替代別名。
標題 類別的標題。

頁面

是指目前入口網站要求頁面。 此物件結合網站地圖與目前要求的實體 (通常是網頁)。

page 物件提供存取某些項目的方式,像是目前頁面的導覽路徑標示、目前頁面的標題或 URL,以及基礎 Dynamics 365 記錄的任何其他屬性或相關實體。

<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 }}. -->

頁面屬性

備註

實體

屬性 描述
breadcrumbs 傳回頁面的導覽路徑標示網站地圖節點物件,從網站地圖根節點開始,並於上層結束。
children 傳回頁面的下層網站地圖節點物件。
parent 傳回頁面的上層網站地圖節點。 如果頁面是首頁,parent 會是 null。
標題 頁面的標題。
URL 頁面的 URL。
[屬性或關聯名稱] 您可以依邏輯名稱存取頁面基礎 Dynamics 365 記錄的任何屬性。
{{ page.createdon }}
{% assign attribute_name = 'name' %}
{{ page[attribute_name] }}
大部分實體屬性的值會直接對應到 Liquid 類型:兩個選項欄位對應到布林值、文字欄位對應到字串、數值/貨幣欄位對應到數字、日期/時間欄位對應到日期物件。 但是,有些屬性類型會做為物件傳回:
  • 查詢 (實體參考) 欄位會做為實體傳回。
  • 選項組/挑選清單欄位會做為實體傳回。
  • 您也可以依關聯結構描述名稱載入任何相關的實體。
    {{ page.adx_webpage_entitylist.adx_name }}
    若關聯是自反關聯性 (也就是自我參考),則會傳回實體。 (否則,所要的結果會模棱兩可。){{ page.adx_webpage_webpage.referencing.adx_name }}
    附註:在單一範本中載入大量相關實體,或存取大量關聯,可能對範本轉譯的效能造成不良影響。 避免在陣列中於迴圈內載入每一個項目的相關實體。 盡可能使用 Dynamics 365 實體標籤載入實體的集合。

polls

提供存取和呈現輪詢的功能。

polls 物件可讓您選取特定輪詢或輪詢位置:

<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>

輪詢屬性

屬性 描述
placements 傳回 pollplacements 物件。
[poll name 或 id] 您可以依 Name 或 ID 屬性存取任何輪詢。 {% assign poll = polls["Poll Name"] %}
{% assign poll = polls["41827a5c-33de-49b8-a0c7-439e6a02eb98"] %}

輪詢位置屬性

屬性 描述
[poll placement name 或 id] 您可以依 Name 或 ID 屬性存取任何輪詢位置。{% assign placement = polls.placements["Placement Name or Id"] %}
{% assign placement = polls.placements["7677c5d4-406e-4b6c-907c-916ac17dba0f"] %}

輪詢位置屬性

備註

實體

屬性 描述
名稱 傳回輪詢位置的名稱欄位。
placement_url 可用來擷取藉由範本完整轉譯的輪詢位置的 URL。
polls 傳回與位置相關的 poll 物件的集合。 反覆項目標籤陣列篩選可搭配此集合使用。
random_url 可用來擷取藉由範本完整轉譯的位置中隨機輪詢的 URL。
submit_url 送出已完成輪詢的 URL。

輪詢屬性

備註

實體

屬性 描述
has_user_voted 傳回 true,如果目前使用者 (已登入或匿名) 已在此輪詢中投票。
名稱 傳回輪詢的名稱欄位。
選項 傳回與輪詢相關的輪詢選項物件的集合。 反覆項目標籤陣列篩選可搭配此集合使用。
poll_url 可用來擷取藉由範本完整轉譯的輪詢的 URL。
問題 傳回輪詢的問題欄位。
submit_button_label 傳回字串,可用來覆寫輪詢的 [送出] 按鈕標籤。
submit_url 送出已完成輪詢的 URL。
user_selected_option 傳回使用者選取的 polloption 物件 (如果他們已投票)。
votes 傳回已針對輪詢製表的投票數。

輪詢選項屬性

備註

實體

屬性 描述
answer 傳回輪詢的答案欄位。
percentage 傳回輪詢中該選項的投票百分比,以 0 到 100 之間的十進位數字表示。
votes 傳回已針對選項製表的投票數。

要求

包含有關目前 HTTP 要求的資訊。

{% assign id = request.params['id'] %}

<a href="{{ request.url | add_query: 'foo', 1 }}">Link</a>

備註

您可以在 Liquid 中使用 URL 篩選動態建置 URL。

屬性

屬性 描述
params 目前要求的具名參數值。 params 是 URL 查詢字串參數、表單張貼參數及 Cookie 的組合。
路徑 目前要求 URL 的路徑。
/profile/
path_and_query 目前要求 URL 的路徑和查詢。
/profile/?foo=1&bar=something
query 目前要求 URL 的查詢部分。
?foo=1&bar=something
URL 目前要求的完整 URL。
http://www.example.com/profile/?foo=1&bar=something

searchindex

searchindex 物件是在 Dynamics 365 實體標籤內使用,並可存取查詢的結果。

{% 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 %}

屬性

屬性 描述
approximate_total_hits 傳回符合索引查詢的約略結果總計數。 請注意,由於搜尋索引在安全性篩選和其他設計因素方面的運作方式,此數字僅為約略值,不一定與某些情況下對目前使用者提供的結果總數完全一致。
傳回目前查詢的頁碼。
page_size 傳回目前查詢的頁面大小上限。 請注意,如果您想要傳回目前頁面的實際結果數目 (這可能比指定的頁面大小上限少),請使用 results.size。
結果 傳回查詢結果頁面,做為搜尋索引結果物件。

搜尋索引結果

屬性 描述
實體 結果的基礎實體
fragment 結果的相關簡短文字片段,其中詞彙符合反白顯示 (使用 <em> HTML 標籤) 的指定查詢。 請注意,特定類型的查詢不支援醒目提示的片段,例如模糊查詢 (~) 和萬用字元查詢 (*)。 這些情況下此屬性會是 null。
ID 結果的基礎記錄的 Dynamics 365 實體識別碼,做為字串。 例如 936DA01F-9ABD-4d9d-80C7-02AF85C822A8
logical_name 結果的基礎記錄的 Dynamics 365 實體邏輯名稱。 例如 adx_webpage
編號 結果的數目,包含所有結果頁面,從 1 開始。 例如,對於第二頁結果的第一個結果,頁面大小為 10,此值會是 11。
score 結果的 Lucene 得分,做為浮點值。 傳回的結果會依此值排列。
標題 結果的標題。
URL 結果的 URL。 這通常 (但非一定) 會是目前應用程式的絕對路徑,而不是完整 URL。 例如:/articles/article1/

設定

可讓您依名稱載入任何設定入口網站的網站設定。 如果找不到具有特定名稱的設定,則會傳回 Liquid 類型

備註

設定會做為 Liquid 類型傳回,但您可以使用類型篩選將它們轉換成其他類型。

{{ 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 %}

網站地圖

允許存取入口網站的網站地圖。

<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 %}

網站地圖屬性

屬性 描述
目前 傳回目前頁面的網站地圖節點物件。
根目錄 傳回網站根 (首頁) 頁面的網站地圖節點物件。

網站地圖節點屬性

屬性 描述
階層連結 傳回節點的導覽路徑標示網站地圖節點物件,從網站地圖根節點開始,並於上層結束。
子女 傳回節點的下層網站地圖節點物件。
描述 節點的描述/摘要內容。 (此欄位可包含 HTML)
實體 傳回節點的基礎實體。 如果節點沒有基礎實體,此值會是 null。
is_sitemap_ancestor 傳回 true,如果網站地圖節點是目前節點的上階,否則傳回 false。 新增 7.0.0008
is_sitemap_current 傳回 true,如果網站地圖節點是目前節點,否則傳回 false。 新增 7.0.0008
上層 傳回節點的上層網站地圖節點。 如果節點是根節點,上層會是 null。
職稱 節點的標題。
URL 節點的 URL。

sitemarkers

可讓您依名稱載入任何網站標記。 如果網站標記存在,將會傳回 sitemarker 物件。 如果找不到具有特定名稱的網站標記,則會傳回 Liquid 類型

{{ 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 %}

網站標記屬性

屬性 描述
URL 網站標記目標的 URL。
[屬性邏輯名稱] 您可以依邏輯名稱存取網站標記目標 Dynamics 365 記錄的任何屬性。 例如 {{ sitemarker.adx_name }}

程式碼片段

可讓您依名稱載入任何內容程式碼片段。 如果找不到具有特定名稱的程式碼片段,則會傳回 Null

{{ snippets["Header"] }}

{% assign footer = snippets["Footer"] %}

{% if footer %}

{{ footer }}

{% else %}

No footer snippet was found.

{% endif %}

tablerowloop

包含反覆項目標籤迴圈區塊內實用的屬性。

備註

forloop 只能在反覆項目標籤標籤內使用。

屬性

屬性 描述
Col 傳回目前列的索引,從 1 開始。
col0 傳回目前列的索引,從 0 開始。
col_first 傳回 true,如果目前欄是某一列中的第一欄,如果不是,則傳回 false。
col_last 傳回 true,如果目前欄是某一列中的最後一欄,如果不是,則傳回 false。
第一頁 如果是迴圈的第一個反覆項目,則傳回 true。 如果不是第一個反覆項目,則傳回 false。
索引 目前項目在集合中的位置,其中第一個項目的位置為 1。
index0 目前項目在集合中的位置,其中第一個項目的位置為 0。
最後一頁 如果是迴圈的最後一個反覆項目,則傳回 true。 如果不是最後一個反覆項目,則傳回 false。
長度 傳回迴圈的反覆項目數,也就是集合中要反覆查詢的項目數。
Rindex 迴圈中剩餘的項目數 (長度 - 索引),其中 1 是最後一個項目的索引。
rindex0 迴圈中剩餘的項目數 (長度 - 索引),其中 0 是最後一個項目的索引。

使用者

是指目前入口網站使用者,允許存取基礎 Dynamics 365 連絡人記錄的任何屬性。 如果沒有使用者登入,此變數將會是 Liquid 類型

使用者是實體

{% if user %}

Hello, {{ user.fullname }}!

{% else %}

Hello, anonymous user!

{% endif %}

屬性

除了擁有實體的所有屬性之外,使用者還有下列屬性。

是指入口網站的網站,允許存取入口網站的 Dynamics 365 網站 (adx_website) 記錄的所有屬性。

備註

實體

代碼

{{ website.adx_name }} ({{ website.id }})

輸出

Community Portal (936DA01F-9ABD-4d9d-80C7-02AF85C822A8)

網站

可讓您依名稱或識別碼載入任何網頁連結

如果網頁連結組存在,網頁連結組霧件將會傳回。 若未發現所指名稱或識別碼的網頁連結組,將會傳回 Liquid 類型

<!-- 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 %}

備註

實體

屬性 描述
複製 網頁連結組的 HTML 複本。
名稱 網頁連結組的名稱。
職稱 網頁連結組的標題。
網頁連結 網頁連結物件陣列,與網頁連結組相關。
[屬性邏輯名稱] 您可以依邏輯名稱存取網頁連結組 Dynamics 365 記錄的任何屬性。 例如 {{ weblinkset.createdon }}

備註

實體

屬性 描述
描述 網頁連結的 HTML 描述。
display_image_only 布林值屬性,表示網頁連結是否應僅顯示為影像,不含連結文字。
display_page_child_links 布林值屬性,表示網頁連結是否應顯示所連結頁面的子頁面的網站地圖連結,做為子連結。
圖像 此連結的網頁連結影像物件。 如果影像不存在,此屬性將會是 null。
is_external 布林值屬性,表示網頁連結的目標 URL 是否連結至外部網站 (而非內部入口網站頁面)。
is_sitemap_ancestor 傳回 true,如果網頁連結的 URL 參考目前網站地圖節點的上階,否則傳回 false。 新增 7.0.0008
is_sitemap_current 傳回 true,如果網頁連結的 URL 參考目前網站地圖節點,否則傳回 false。 新增 7.0.0008
名稱 網頁連結的名稱/標題。
Nofollow 布林值屬性,表示網頁連結是否應標示為 rel="nofollow"。
open_in_new_window 布林值屬性,表示按下網頁連結時,是否應在新的瀏覽器視窗/索引標籤中開啟。
工具提示 網頁連結的工具提示文字。
URL 網頁連結的 URL。
網頁連結 子網頁連結物件陣列,與網頁連結相關。
[屬性邏輯名稱] 您可以依邏輯名稱存取網頁連結 Dynamics 365 記錄的任何屬性。 例如 {{ weblink.createdon }}
alternate_text 影像的替代文字。
高度 整數,包含指定的影像高度。 如果未提供高度值,此屬性將會是 null。
URL 影像的 URL。
寬度 整數,包含指定的影像寬度。 如果未提供寬度值,此屬性將會是 null。

請參閱

新增動態內容並建立自訂範本
Liquid 類型
Liquid 物件
Liquid 標籤
Liquid 篩選