An updated version of the html is below.
Please note that dimension links no longer contain filter values. The following code should work as-is for measures, but for dimensions, you’ll need to just grab a measure link as opposed to the dimension link. For example, you can replace {% assign url_split_at_f = link | split: 'f[' %}
with {% assign url_split_at_f = count._link | split: 'f[' %}
. Also note that any measure you reference this way must have a drill_fields
parameter for a link to be generated.
{% assign url_split_at_f = link | split: 'f[' %}
{% assign user_filters = link | truncate: 0 | replace: '...','' %}
{% assign continue_loop = link == true %}
{% for url_part in url_split_at_f offset:1 %}
{% if continue_loop %}
{% if url_part contains 'sorts' %}
{% assign part_split_at_sorts = url_part | split: 'sorts' %}
{% assign last_filter = part_split_at_sorts | first %}
{% assign user_filters = user_filters | append:'f[' %}
{% assign user_filters = user_filters | append:last_filter %}
{% assign continue_loop = link == false %}
{% else %}
{% assign user_filters = user_filters | append:'f[' %}
{% assign user_filters = user_filters | append:url_part %}
{% endif %}
{% endif %}
{% endfor %}
{% assign remove_last_ampersand = user_filters.size | plus: 2 %}
{% assign user_filters = user_filters | truncate: remove_last_ampersand %}
{% assign user_filters = user_filters | remove: '...' %}
{% assign user_filters = user_filters | replace: 'f[orders.created_date]', 'Date' %}
{% assign user_filters = user_filters | replace: 'f[products.brand_name]', 'Brand' %}
{% assign user_filter_split = user_filters | split: '&' %}
{% for filter in user_filter_split %}
{% assign filter_with_amp = filter | append: '&' %}
{% if filter_with_amp contains 'f['%}
{% assign user_filters = user_filters | remove: filter_with_amp %}
{% endif %}
{% endfor %}
{{user_filters}}