WebappsLayouts

WebApp List Layout

Syntax

When placed onto a page or a template, this liquid displays the WebApp items using the defined list Layout.

{%- include 'webapp'
    id: '3'
    layout: 'default'
    per_page: '20'
    sort_type: 'properties.name'
    sort_order: 'asc',
    type: 'list' 
-%}

Parameters

ParameterDescription
idthe WebApp's ID
item_idsoutput one or more WebApp items. For multiple ids comma separate them like so: item_ids: '17559,17546'.
category_idsoutput all items in one or more categories. Comma separate category ids to filter by multiple categories e.g: category_ids: '17559,17546'.
show_all_sub_itemsdefault is 'true' - When setting a category, this defines whether or not items should be shown if they are in sub-categories
layoutdefault is 'default' - layout values are relative to the folder: layouts/webapps/My WebApp (webapp_1)/[layout name]
per_pagedefines the number of items outputted on the page
show_pagnationdefault is 'true' - defines if items should be paginated when the per_page is met.
ignore_paginationdefault is 'false' - defines if the output should ignore pagination in the URL. This is useful when outputting fixed WebApp/Module items in a sidebar, that don't need to be affected when moving page number.
sort_typedefines the type by which items are ordered. This can be a field (e.g. sort_type: 'properties.name' or sort_type: 'properties.webapp_field_1_2') or you can choose to sort by your array of 'item_ids' if you are outputting specific items (sort_type: 'item_ids')
sort_orderdefines the order in which the type is sorted
collectiondefault is 'false' - If you set it as collection: 'true' then any layout is suppressed.
use_wrapperdefault is 'false' - If you set it as use_wrapper: 'true' then your layout will be layouts/webapps/My WebApp (webapp_1)/[layout name]/list/wrapper and the wrapper file needs to contains Liquid to output the items: {%- include 'modules/siteglide_system/get/get_items', item_layout: 'item' -%}
typedefault is list in most contexts, but when an include tag is nested inside a detail view, it is important to reset this back to 'list'

Sorting by Custom Fields

When sorting by Custom fields, you'll need to refer to the field by its Custom Field ID. e.g. to sort by the 2nd Custom Field created on webapp_1, you should set the Sort Type to: sort_type: "properties.webapp_1_2" We use this syntax to access the field directly in the database, in order to help increase Page Load performance.

Learn more about Custom Field IDs here: Understanding Custom Field Names and IDs - and when to use them

Default Fields

Field NameLiquid TagDescription
Item Name{{ this['name'] }}name of the FAQ
Slug{{ this['full_slug'] }}url of the current item, relative to the layout
Weighting{{ this['weighting'] }}weight of item, used for sorting
Release Date{{ this['release_date'] }}release date of the item
Expiry Date{{ this['expiry_date'] }}expiry date of the item
Enabled{{ this['enabled'] }}enable/disable the item
Create Date{{this.create_date}}Date item was created through Admin or GraphQL
Last Edit Date{{this.last_edit_date}}Date item was last updated through Admin or GraphQL

Folder Structure

When you create a WebApp, default files are automatically created for you. WebApp list layouts are stored in the following folder structure, which you can view via Code Editor: layouts/webapps/My WebApp (webapp_ID)/

Within this folder you will find the following:

  • list/- the list layouts, used when outputting items as a section on a page

    • default.liquid - the default list layout

To create a custom layout file, right click on the list folder. Alternatively, you can edit the default file. All layout files must use the .liquid file extension, for example mylayout.liquid. Any files created within this folder will automatically become available in the dropdown selector when outputting a WebApp from the Toolbox

How is this guide?

Last updated on

Powered by Holocron

Documentation