Line Item Quantity Totals + Bundles
This template outputs the total quantity for each variant included in a batch of orders. In doing so it also includes bundle items created by Gazebo's Bundles app.
Template without line breaks
"Variant Title", "SKU", "Quantity"
{% assign variant_list = '' %}{% for order in orders %}{% for line in order.line_items %}{% if line.bundle_items %}{% for bundle_item in line.bundle_items %}{% assign variant_list = variant_list | append: bundle_item.id | append: '::' %}{% endfor %}{% else %}{% assign variant_list = variant_list | append: line.variant_id | append: '::' %}{% endif %}{% endfor %}{% endfor %}{% assign variant_list = variant_list | split: '::' | uniq %}{% for v in variant_list %}{% assign v_count = 0 %}{% assign v_int = v | plus: 0 %}{% for order in orders %}{% for line in order.line_items %}{% if line.bundle_items %}{% for bundle_item in line.bundle_items %}{% assign variant_id_int = bundle_item.id | plus: 0 %}{% if v_int == variant_id_int %}{% assign variant_title = bundle_item.title %}{% assign variant_sku = bundle_item.sku %}{% comment %} Increment the variant count {% endcomment %}{% assign bundle_quantity_multiple = bundle_item.quantity | times: line.quantity %}{% assign v_count = v_count | plus: bundle_quantity_multiple %}{% endif %}{% endfor %}{% else %}{% assign variant_id_int = line.variant_id | plus: 0 %}{% if v_int == variant_id_int %}{% assign variant_title = line.product.title | append: ' - ' | append: line.variant.title %}{% assign variant_sku = line.variant.sku %}{% comment %} Increment the variant count {% endcomment %}{% assign v_count = v_count | plus: line.quantity %}{% endif %}{% endif %}{% endfor %}{% endfor %}"{{ variant_title }}","{{ variant_sku }}","{{ v_count }}"
{% endfor %}Template with line breaks
"Variant Title", "SKU", "Quantity"
{% assign variant_list = '' %}
{% for order in orders %}
{% for line in order.line_items %}
{% if line.bundle_items %}
{% for bundle_item in line.bundle_items %}
{% assign variant_list = variant_list | append: bundle_item.id | append: '::' %}
{% endfor %}
{% else %}
{% assign variant_list = variant_list | append: line.variant_id | append: '::' %}
{% endif %}
{% endfor %}
{% endfor %}
{% assign variant_list = variant_list | split: '::' | uniq %}
{% for v in variant_list %}
{% assign v_count = 0 %}
{% assign v_int = v | plus: 0 %}
{% for order in orders %}
{% for line in order.line_items %}
{% if line.bundle_items %}
{% for bundle_item in line.bundle_items %}
{% assign variant_id_int = bundle_item.id | plus: 0 %}
{% if v_int == variant_id_int %}
{% assign variant_title = bundle_item.title %}
{% assign variant_sku = bundle_item.sku %}
{% comment %} Increment the variant count {% endcomment %}
{% assign bundle_quantity_multiple = bundle_item.quantity | times: line.quantity %}
{% assign v_count = v_count | plus: bundle_quantity_multiple %}
{% endif %}
{% endfor %}
{% else %}
{% assign variant_id_int = line.variant_id | plus: 0 %}
{% if v_int == variant_id_int %}
{% assign variant_title = line.product.title | append: ' - ' | append: line.variant.title %}
{% assign variant_sku = line.variant.sku %}
{% comment %} Increment the variant count {% endcomment %}
{% assign v_count = v_count | plus: line.quantity %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
"{{ variant_title }}","{{ variant_sku }}","{{ v_count }}"
{% endfor %}Last updated