Skip to content

Instantly share code, notes, and snippets.

@jdlich
Last active December 20, 2017 23:00
Show Gist options
  • Save jdlich/dfe3e3405dbee86e786572ab01880548 to your computer and use it in GitHub Desktop.
Save jdlich/dfe3e3405dbee86e786572ab01880548 to your computer and use it in GitHub Desktop.

Creates an array of metafield keys for a given namespace (replace "namespace" below with actual metafield namespace).

{% assign product_metafields = product.metafields["namespace"] %}

{% assign product_metafield_keys = "" | split: "" %}

{% assign keys = product_metafields | json | split: "," %}

{% for k in keys %}
  {% assign key = k | split: ":" | first | remove: '"' | remove: '{' | remove: '}' %}
  {% assign key = key | split: "-<-@" %}
  {% assign product_metafield_keys = product_metafield_keys | concat: key %}
{% endfor %}

Once we have the keys, we can loop through them dynamically.

<h2>Specs</h2>
<ul>
  {% for key in product_metafield_keys %}
    <li>{{ product_metafields[key] }}</li>
  {% endfor %}
</ul>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment