Hoddle Black Friday/Cyber Monday 2023 - Hardgoods
Hoddle Black Friday/Cyber Monday 2023 - Hardgoods
{% if products.length > 1 %}{{ products.length }} results{% endif %}
- Hoddle Logo Woodgrain Skateboard Deck - 8.38"
- Hoddle Kirk Scanner Skateboard Deck - 8.25"
- Hoddle Shaun Paul Bell Skateboard Deck - 8.50"
- Hoddle Luxton Realist Skateboard Deck - 8.38"
- Hoddle Thunder Dome Skateboard Deck - 8.25"
- Hoddle Thunder Dome Softie Shape Skateboard Deck - 8.60"
- Hoddle Zuzic Fracture Skateboard Deck - 8.50"
- Hoddle Luxton Realist Skateboard Complete - 8.38"
- Hoddle Zuzic Fracture Skateboard Complete - 8.50"
- Hoddle Thunder Dome Skateboard Complete - 8.25"
- Hoddle Thunder Dome Softie Shape Skateboard Complete - 8.60"
- Hoddle Logo Woodgrain Skateboard Complete - 8.38"
- Hoddle Shaun Paul Bell Skateboard Complete - 8.50"
- Hoddle Kirk Scanner Skateboard Complete - 8.25"
- Hoddle Life V Death Skateboard Deck - 8.50"
- Hoddle Life V Death Skateboard Complete - 8.50"
- Hoddle Shaun Paul Scanner Skateboard Deck - 8.25"
- Hoddle Shaun Paul Scanner Skateboard Complete - 8.25"
- Hoddle Simon Zuzic Screen Protector Skateboard Complete - 8.25"
- Hoddle Jack Kirk Images Skateboard Complete - 8.50"
- Hoddle Simon Zuzic Screen Protector Skateboard Deck - 8.25"
- Hoddle Jack Kirk Images Skateboard Deck - 8.50"
- Hoddle Simon Zuzic High Ball Skateboard Complete - 8.50"
- Hoddle Jack Kirk Daisy Skateboard Complete - 8.50"
- Hoddle Digby Luxton Trifid Skateboard Complete - White - 8.25"
- Hoddle Logo Skateboard Complete - Assorted Veneer - 8.38"
- Hoddle Simon Zuzic High Ball Skateboard Deck - 8.50"
- Hoddle Digby Luxton Trifid Skateboard Deck - White - 8.25"
- Hoddle Logo Skateboard Deck - Assorted Veneer - 8.38"
- Hoddle Jack Kirk Daisy Skateboard Deck - 8.50"
{% for product in loader.activeProducts %}
{% for banner in collectionBanners %}
{% if Filters.native.size > 0 and banner.sub == false %}{% continue %}{% endif %}
{% if banner.position == product.position %}
{% if banner.apply_whole %}
{% else %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% assign display_wishlist = true %}
{% for tag in Wishlist.data.exclusions %}
{% if product.tags contains tag %}
{% assign display_wishlist = false %}
{% endif %}
{% endfor %}
{% if product == blank %}
{% assign product = Product %}
{% endif %}
{% if display_wishlist %}
{%- if wishlist == blank -%}
{% assign wishlist = Wishlist.data.items | map: 'handle' %}
{% if wishlist[0] == null %}
{% assign wishlist = data.items | map: 'handle' %}
{% endif %}
{%- endif -%}
{%- assign p_title = product.title | replace: '"', '”' -%}
{%- capture wishlist_add -%}
event.preventDefault();
Wishlist.add({
handle: '{{ product.handle }}',
type: '{{ product.type | escpae }}',
image: '{{ product.featured_image }}',
{%- if variant -%}variant: {{ variant.id | json }},{%- endif -%}
title: `{{ p_title }}`
});
[this, _n.sibling(this, '.wishlist__button')].forEach(function(button) { button.classList.toggle('dn')});
{%- endcapture -%}
{% endif %}
{%- if product.member_exclusive contains 'coming_soon' or product.member_exclusive contains 'member_active' -%}
{%- assign year = product.member_end | split: '/' | last | prepend: '/' -%}
{%- assign date = product.member_end | remove: year -%}
{%- if product.member_exclusive contains 'coming_soon' -%}
{%- assign year = product.member_start | split: '/' | last | prepend: '/' -%}
{%- assign date = product.member_start | remove: year -%}
{%- endif -%}
{%- capture member_active_text -%}CCS+ Exclusive through {{ date }}{%- endcapture -%}
{%- capture coming_soon_text -%}CCS+ Exclusive starting {{ date }}{%- endcapture -%}
{%- assign member_text = member_active_text -%}
{%- if product.member_exclusive contains 'coming_soon' -%}
{%- assign member_text = coming_soon_text -%}
{%- endif -%}
{{ year }}
{{ date }}
{{ member_text }}
{%- endif -%}
{% assign crop = 'crop_height=64&crop_left=430&crop_top=472&crop_width=64' %}
{% if 'Skateboard Deck, Skateboard Complete' contains product.type %}
{% assign crop = 'crop_height=64&crop_left=230&crop_top=472&crop_width=64' %}
{% endif %}
{% for badge in productBadges %}
{% if product.tags contains badge.tag and badge.tag != 'more-colors' %}
{% if product.reviews %}
{% assign to_half = product.reviews.rating | round:1 | divided_by: 0.5 | round | times: 0.50 %}
{{ badge.collection_badge }}
{% endif %}
{% endfor %}
{%- assign option_value_data = '' -%}
{%- for option in product.options_with_values -%}
{%- if option.name == 'Title' %}{%- continue -%}{%- endif -%}
{%- unless siblingRange[product.type] contains option.name -%}{%- continue -%}{%- endunless -%}
{%- if option.values.size == 0 -%}{%- continue -%}{%- endif -%}
{%- assign option_values = option.values | sort -%}
{%- if option.values.size == 1 -%}
{%- assign option_value_data = option_values | first -%}
{%- else -%}
{%- assign option_values_last = option_values | last -%}
{%- assign option_value_data = option_values | first | append: ' - ' | append: option_values_last -%}
{%- endif -%}
{%- endfor -%}
{%- if option_value_data == '' and siblingRange[product.type] contains 'Title' -%}
{%- assign title_segments = product.title | split: ' - ' -%}
{%- endif -%}
{{- option_value_data -}}
{% for tag in product.tags %}
{% if tag contains 'Vendor' %}
{% assign vendor_tag = tag | remove: 'Vendor:' %}
{% assign vendor_collab = vendor_tag | append: ' x' %}
{% break %}
{% endif %}
{% endfor %}
{% if product.siblings.size > 0 %}
{% assign productTitle = product.title | split: ' - ' | first %}
{% else %}
{% assign productTitle = product.title | remove: product.type | split: '-' %}
{% endif %}
{% assign productTitle = product.title | split: ' - ' | first %}
{% unless product.title contains vendor_collab %}
{% assign productTitle = productTitle | remove: vendor_tag %}
{% endunless %}
{% if vendor_tag != blank %}
{{ vendor_tag }}
{% endif %}{{ productTitle }}
{% assign discount_amount = product.price | divided_by: product.compare_price | times: -100 | plus: 100 | round %} {%- capture discount_text -%} [discount]% off {%- endcapture -%}
{%- if compare_min < compare_max -%}
{%- assign before_text = 'From ' -%}
{%- endif -%}
{%- if product.compare_price > product.price and discount_amount > 10 -%}
{{ before_text }}
{{ product.price | money }}
{{ product.compare_price | money }}
{%- else -%}
{{ product.price | money }}
{%- endif -%}
{%- if discount_amount > 10 -%}
{{ discount_text | replace: '\[discount\]', discount_amount }}
{%- endif -%}
{% for i in (1..5) %}
{% endfor %}
({{ product.reviews.count }})
{% endif %}
{% unless total_pages == 1 or total_pages == 0 %}
{% endunless %}
{% assign active = 'dim' %}
{% if current_page == 1 %}
{% assign active = 'o-50 pointer-none' %}
{% endif %}
{% for i in pages %}
{% assign pageoffset = current_page | minus: i | abs %}
{% if pageoffset != 0 and pageoffset != 1 and pageoffset != 2 pageoffset != 3 %}{% continue %}{% endif %}
{% assign active = '' %}
{% if current_page == i %}
{% assign active = 'brand' %}
{% endif %}
{% assign last_page_shown = i %}
{% endfor %}
{% assign active = 'dim' %}
{% if current_page == total_pages %}
{% assign active = 'o-50 pointer-none' %}
{% endif %}
{% if last_page_shown != total_pages %}
...
{% endif %}
Loading Products