Miva - Category Cascade List for URIs
<!--
-----------------------------------------------------------------
Generates URIs that use a categories parent categories in the URI
-----------------------------------------------------------------
Given a store with a category/sub-category structure like this:
- appliances
- kitchen
- refrigerators
It will generate Miva XML Provisioning for a category URI like this:
/appliances/kitchen/refrigerators.html
-->
<mvt:do file="g.Module_Library_DB" name="l.success" value="CategoryList_Load_All( l.settings:categories )" />
<mvt:foreach iterator="category" array="categories">
<mvt:do file="g.Module_Root $ '/modules/component/cmp-mv-prodctgy-meta.mvc'" name="l.success" value="CategoryCascadeList_Load_Category( l.settings:category, l.settings:category:list )" />
<mvt:comment>
<!--
When there is only one item in the `category:list`,
these URIs have already been generated by Miva's URI management template: `/&mvts:category:code;.html`
-->
</mvt:comment>
<mvt:if expr="miva_array_elements( l.settings:category:list ) EQ 1">
<mvt:foreachcontinue/>
</mvt:if>
<mvt:foreach iterator="item" array="category:list">
<mvt:assign name="l.settings:category:uri" value="l.settings:category:uri $ '/' $ l.settings:item:code" />
</mvt:foreach>
<mvt:assign name="l.settings:category:uri" value="l.settings:category:uri $ '.html'" />
<uri_add category_code="&mvte:category:code;" status="200" uri="&mvte:category:uri;" />
</mvt:foreach>
<!-- Take this output, and import it using, "Import Data and Settings in XML Provisioning Format" -->
<mvt:do file="g.Module_Root $ '/modules/component/cmp-mv-prodctgy-meta.mvc'" name="l.success" value="CategoryCascadeList_Load_Category( l.settings:category, l.settings:category:list )" /><mvt:foreach iterator="item" array="category:list"><mvt:assign name="l.settings:category:uri" value="l.settings:category:uri $ '/' $ l.settings:item:code" /></mvt:foreach><mvt:assign name="l.settings:category:uri" value="l.settings:category:uri $ '.html'" />&mvt:category:uri;