...
Parameter | Description | Example value |
---|---|---|
type | configuration model type (currently only ‘standard’) | standard |
version | configuration version (currently only 1) | 1 |
sub_version | configuration sub version (currently only 1) | 1 |
layout | constraints about your layout (e.g.: how many cols per device) | |
layout[*].name | key for the layout case (e.g.: for the device) | ua-deviceCategory |
layout[*].value | value for the layout case (e.g: for mobile) | Smartphone/Desktop |
layout[*].cols | number of columns per row in this device (e.g.: 2 for mobile, 4 for desktop) | 2 |
injection | information about the injections to be made | |
injection.minimum | minimum number of injections (an injection has the number of element defined in the size) | 1 |
injection.maximum | maximum number of injections (an injection has the number of element defined in the size) | 1 |
injection.size | size of an injections (here 4 elements, which means 1 row for the desktop and 2 rows for the mobile in case of example layout[*].cols above) | 4 |
positions | information about which positions should be filled in the listing | |
positions[*].id | unique string identifier of the position | 1 |
positions[*].positions | list of specific positions (which can be different per device for instance) | |
positions[*].positions[*].position | index where the content should be injected | 2 |
positions[*].positions[*].cols | size of the content in columns | 1 |
positions[*].positions[*].rows | size of the content in rows | 1 |
positions[*].positions[*].type | type of position (currently only fixed) | fixed |
positions[*].positions[*].parameters | additional parameters (optional) | format: array<struct<name string, array<string>>> |
positions[*].positions[*].segments | segments on which this position applies | [{"name": "ua-deviceCategory" |
positions[*].parameters | additional parameters (optional) | format: array<struct<name string, array<string>>> |
positions[*].conditions | advanced conditional logic | see section Advanced Conditions below |
content | the content which should be injected | |
content[*].selector_type | selector type to indicate how to recognize which of the content container should be detected (by default detection done by block parameter) | parameter |
content[*].selector_name | indicate on which parameter name the content selector should apply (typically selector is done on a template parameter) | template |
content[*].selector_value | indicate on which parameter value the content selector should apply (so here we indicate that the selector should take the bloc container template) | blog-container |
content[*].type | type of content (so far always container) | container |
content[*].position_ids | list of unique position identifiers to be filled with this content source (must match identifiers defined in positions[*].id) | ['1','2'] |
content[*].page_offsets | indicate how much offset should be applied per page (if -1, content is only injected in the first page) | -1 |
positionscontent[*].parameters | additional parameters (optional) | format: array<struct<name string, array<string>>> |
...
Listing Conditions can also support advanced real-time conditions (as part of the “positions” “content” field) to implement custom behaviors in the listing injections.
...