21 lines
810 B
JSON
21 lines
810 B
JSON
---
|
|
# facets generator
|
|
# creates a csv of unique values and their counts of fields given in site.data.theme.metadata-facets-fields
|
|
#
|
|
# Requires CB's array_count_uniq.rb plugin!
|
|
---
|
|
{%- assign items = site.data[site.metadata] | where_exp: 'item','item.objectid' -%}
|
|
{%- assign fields = site.data.theme.metadata-facets-fields | split: "," -%}
|
|
{
|
|
"facets": [
|
|
{% for f in fields %}{%- assign uniqueArray = items | map: f | join: ";" | downcase | split: ";" | array_count_uniq -%}
|
|
{
|
|
"field": {{ f | jsonify }},
|
|
"terms": { {% for unique in uniqueArray %}
|
|
{{ unique[0] | jsonify }}: {{ unique[1] | jsonify }}{% unless forloop.last %},{% endunless %}{% endfor %}
|
|
}
|
|
}{% unless forloop.last %},{% endunless %}
|
|
{% endfor %}
|
|
]
|
|
}
|