Last active
June 22, 2024 09:27
-
-
Save TeamDijon/8990bb2ad67a036d1f9aecfebb18f829 to your computer and use it in GitHub Desktop.
Testing of the new "cart filters" issued by Shopify
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{% # Cart filters testing %} | |
{% liquid | |
# A small liquid snippet to compare the two new filters from what was possible before | |
# See https://shopify.dev/docs/api/liquid/filters/cart-filters for reference | |
# Quite redundant in my opinion as this is basically sugar but maybe they'll find their audience | |
assign targetProduct = all_products['product-handle'] | |
assign productId = targetProduct.id | |
assign targetVariant = targetProduct.selected_or_first_available_variant | |
assign variantId = targetVariant.id | |
assign oldVariantInCartQuantity = cart.items | where: 'variant_id', variantId | map: 'quantity' | sum | |
assign newVariantInCartQuantity = cart | item_count_for_variant: variantId | |
assign oldProductInCartList = cart.items | where: 'product_id', productId | |
assign newProductInCartList = cart | line_items_for: targetProduct | |
assign oldVariantInCartList = cart.items | where: 'variant_id', variantId | |
assign newVariantInCartList = cart | line_items_for: targetVariant | |
echo 'Product ID: ' | append: productId | append: '<br>' | |
echo 'Variant ID: ' | append: variantId | append: '<br><br>' | |
echo 'item_count_for_variant filter test:' | append: '<br>' | |
echo 'Quantity of variant #' | append: variantId | append: ' in cart: ' | append: oldVariantInCartQuantity | append: '<br>' | |
echo 'Quantity of variant #' | append: variantId | append: ' in cart: ' | append: newVariantInCartQuantity | append: '<br><br>' | |
echo 'line_items_for filter for products test:' | append: '<br>' | |
echo 'List of product #' | append: productId | append: ' items in cart: ' | append: oldProductInCartList | append: '<br>' | |
echo 'List of product #' | append: productId | append: ' items in cart: ' | append: newProductInCartList | append: '<br><br>' | |
echo 'line_items_for filter for variants test:' | append: '<br>' | |
echo 'List of variant #' | append: variantId | append: ' items in cart: ' | append: oldVariantInCartList | append: '<br>' | |
echo 'List of variant #' | append: variantId | append: ' items in cart: ' | append: newVariantInCartList | append: '<br><br>' | |
%} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment