All Collections
Troubleshooting
Hiding Properties or Products
Hide Product Properties / Attributes In Cart
Hide Product Properties / Attributes In Cart

This article will show you how to hide custom product properties / attributes in the cart.

Strauss Van Wagenen avatar
Written by Strauss Van Wagenen
Updated over a week ago

If you're using your native cart page, you might notice certain attributions displayed beneath the Product information. Fortunately, there's a simple solution to conceal those attributes. This guide will demonstrate how to hide custom product properties within the cart.


INSTRUCTIONS

Your theme's "templates/cart.liquid" or "sections/cart-template.liquid" file likely contains a code section resembling the following:

{% for p in item.properties %} 
{% unless p.last == blank%}
{{ p.first }}: {{ p.last }}
{% endunless %}
{% endfor %}

After the "{% for p in item.properties %}" line, include "{% assign first_character = p.first | slice: 0 %}". Then, following the "{% unless p.last == blank" %} section, add " or first_character == '_' ".

Your modified section should resemble this:

{% for p in item.properties %} 
{% assign first_character = p.first | slice: 0 %}
{% unless p.last == blank or first_character == '_' %}
{{ p.first }}: {{ p.last }}
{% endunless %}
{% endfor %}

The structure may not always match precisely, but as long as you've integrated "{% assign first_character = p.first | slice: 0 %}" and "or first_character == '_' ", the functionality should operate correctly!

Please take note of the second line, where we set the variable "first_character" and then examine its contents on the third line to detect an underscore before proceeding with printing. Incorporating this code prevents the display of custom product properties that commence with an "_" character.


ADVANCED PROPERTY REMOVAL

Occasionally, the liquid code might not be found in the standard files mentioned above, requiring developers to modify more intricate code within the theme's JavaScript files. Here's an example of how such modifications might appear:

if(item.properties) { 
$.each(item.properties, function(title, value) {
if (value && title[0] != '_' && value[0] != '_') {
cart_items_html += '<div class="line-item">' + title +': ' + value + '</div>';
}
});
}

Keep in mind! Your primary objective is to ensure the removal of any property beginning with "_"! If you encounter difficulties, don't hesitate to contact support, and we'll provide you with the necessary resources!

Did this answer your question?