Free Shipping On Order Over $79
Back to School: $10 OFF $90 — Code:BTS10 / $25 OFF $150 — Code:BTS25 / $40 OFF $200 — Code:BTS40 / $60 OFF $250 — Code:BTS60
Enjoy 10% OFF the 2nd tee — valid on New Drops only, no code needed.
const prefixSection = "shoplaza-section" ; const headerRoot = document.getElementById(`${prefixSection}-header`); const collectionFeaturedSticky = document.getElementById('collection-func-sticky'); const collectionFilter = document.getElementById('collection-filter'); const mdStickyOn = true; const resizeObserver = new ResizeObserver(entries => { for (let entry of entries) { const { height } = entry.contentRect; collectionFeaturedSticky && (collectionFeaturedSticky.style.top = (mdStickyOn ? height : '0') + 'px'); collectionFilter && (collectionFilter.style.top = height + 'px'); } }); resizeObserver.observe(headerRoot);
Sopula|Premium Graphic Tees & Streetwear
NEW DROP
2nd 10% OFF
New Graphic Tees
New Tank Tops
New Shorts
New Designs
No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee
$32.00
BEST SELLER
CLOTHING
$60 OFF
T-Shirts
Graphic Tees
Washed Tees
Crop Tees
Tank Tops
Jerseys
Hoodies
Washed Hoodies
Zip Up Hoodies
Cropped Hoodies
Bottoms
Shorts
Jorts
Jeans
Pants
Essentials
Combo Packs
BACK TO SCHOOL
Flash Sale
limited
Hot New Drops
SALE
Hiphop Cross Hot Diamond Jorts Denim Shorts
$57.60
$64.00
STYLES
Western & Cowboy
Street Chic
Faith & Gods
Japanese Art
Hip-Hop & Cartoon
Sports & Stars
Racing Spirit
Abstract
Slogans
CUSTOM
Classic Custom Tee
Oversized Custom Tee
Acid Wash Custom Tee
Oversized Custom Tank Top
Acid Wash Custom Hoodie
+6
Sopula Essential 100% Cotton Blank T-Shirt
$30.00
Track Order
More links
${function() { var linkList = [ { id: 80647261, index: 1, title: "NEW DROP", url: '/collections/new-arrivals', target: '', tag: {"label":"2nd 10% OFF","bg":"rgba(63, 114, 175, 1)","color":"#FFFFFF"}, product0: {"id":"ee3355b8-b966-49a4-ab85-d76028b09c76","title":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","brief":"","vendor":"SOPULA","vendor_url":"","has_only_default_variant":false,"requires_shipping":true,"taxable":true,"published":true,"handle":"no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee","spu":"CP-223639-WJY","need_variant_image":true,"updated_at":"2025-07-04T11:25:18Z","created_at":"2025-07-04T10:47:56Z","mixed_wholesale":false,"min_price_variant":{"id":"190ac180-dea5-4bc5-9bc0-2c3abc7b3ad8","title":"Black red-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-S","barcode":"","position":1,"option1":"Black red","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":""},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=190ac180-dea5-4bc5-9bc0-2c3abc7b3ad8","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"S"}],"off_ratio":0},"tags":"BlokeCore,jersey,sopula","available":true,"price_min":"32","price":"32","price_max":"32","compare_at_price_min":"32","compare_at_price":"32","compare_at_price_max":"32","retail_price_min":"32","retail_price_max":"32","url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee","published_at":"2025-07-04T10:47:56Z","variants_count":6,"image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"options":[{"id":"6456a10c-e745-4769-9994-65d8418c733f","name":"Color","position":1,"values":["Black red"]},{"id":"1d265452-05d4-4225-9161-5af90029cdf8","name":"Size","position":2,"values":["S","M","L","XL","2XL","3XL"]}],"variants":[{"id":"190ac180-dea5-4bc5-9bc0-2c3abc7b3ad8","title":"Black red-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-S","barcode":"","position":1,"option1":"Black red","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=190ac180-dea5-4bc5-9bc0-2c3abc7b3ad8","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"6a4e49d1-9efa-4876-95bd-d90bc41e5c85","title":"Black red-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-M","barcode":"","position":2,"option1":"Black red","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=6a4e49d1-9efa-4876-95bd-d90bc41e5c85","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"6f25b5f3-78a3-4d3a-8a22-f2706b2f8ed5","title":"Black red-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-L","barcode":"","position":3,"option1":"Black red","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=6f25b5f3-78a3-4d3a-8a22-f2706b2f8ed5","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"f401e679-99fa-4598-b184-23be69d6d3b4","title":"Black red-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-XL","barcode":"","position":4,"option1":"Black red","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=f401e679-99fa-4598-b184-23be69d6d3b4","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"865a1311-a01e-4d9f-a78d-b8a2637aef5d","title":"Black red-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-2XL","barcode":"","position":5,"option1":"Black red","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=865a1311-a01e-4d9f-a78d-b8a2637aef5d","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"70866ce1-6c39-4fd1-b0dc-c8f8a43a1d3e","title":"Black red-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-223639-WJY-Black_red-3XL","barcode":"","position":6,"option1":"Black red","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},"wholesale_price":[{"price":32,"min_quantity":1}],"weight":"200","compare_at_price":"32","price":"32","retail_price":"32","available":true,"url":"\/products\/no-23-imitation-racing-suit-design-cropped-jerseys-mesh-tee?variant=70866ce1-6c39-4fd1-b0dc-c8f8a43a1d3e","available_quantity":999999999,"options":[{"name":"Color","value":"Black red"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null}],"images":[{"src":"\/\/img.staticdj.com\/watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","path":"watermarkbb6c162285041ef828c9bf22e3dc6ff6.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/watermark74a4b44cd0ddb935d7d6896a2d424c94.jpeg","path":"watermark74a4b44cd0ddb935d7d6896a2d424c94.jpeg","width":1500,"height":2000,"alt":"No. 23 Imitation Racing Suit Design Cropped Jerseys Mesh Tee","aspect_ratio":0.75}],"retail_price":"32","off_ratio":0,"price_varies":true} , children: [ { title: "New Graphic Tees", url: '/collections/new-graphic-tees', target: '', tag: null, children: [ ] }, { title: "New Tank Tops", url: '/collections/new-tank-tops', target: '', tag: null, children: [ ] }, { title: "New Shorts", url: '/collections/new-shorts', target: '', tag: null, children: [ ] }, { title: "New Designs", url: '/collections/new-design', target: '', tag: null, children: [ ] }, ] }, { id: 80647271, index: 2, title: "BEST SELLER", url: '/collections/best-seller', target: '', tag: null, product0: null , children: [ ] }, { id: 80647273, index: 3, title: "CLOTHING", url: '', target: '', tag: {"label":"$60 OFF","bg":"rgba(31, 171, 137, 1)","color":"rgba(255, 255, 255, 1)"}, product0: null , children: [ { title: "T-Shirts", url: '/collections/t-shirts-tops', target: '', tag: null, children: [ { title: "Graphic Tees", url: '/collections/graphic-tees', target: '', tag: null, }, { title: "Washed Tees", url: '/collections/washed-tees', target: '', tag: null, }, { title: "Crop Tees", url: '/collections/cropped-tees', target: '', tag: null, }, { title: "Tank Tops", url: '/collections/tank-tops', target: '', tag: null, }, { title: "Jerseys", url: '/collections/jersey', target: '', tag: null, }, ] }, { title: "Hoodies", url: '/collections/hoodies', target: '', tag: null, children: [ { title: "Washed Hoodies", url: '/collections/washed-hoodies', target: '', tag: null, }, { title: "Zip Up Hoodies", url: '/collections/zip-up-hoodies', target: '', tag: null, }, { title: "Cropped Hoodies", url: '/collections/cropped-hoodies', target: '', tag: null, }, ] }, { title: "Bottoms", url: '/collections/bottoms', target: '', tag: null, children: [ { title: "Shorts", url: '/collections/shorts', target: '', tag: null, }, { title: "Jorts", url: '/collections/jorts', target: '', tag: null, }, { title: "Jeans", url: '/collections/jeans', target: '', tag: null, }, { title: "Pants", url: '/collections/pants', target: '', tag: null, }, ] }, { title: "Essentials", url: '/collections/essentials', target: '', tag: null, children: [ { title: "Combo Packs", url: '/collections/combo-packs', target: '', tag: null, }, ] }, ] }, { id: 80647311, index: 4, title: "BACK TO SCHOOL", url: '/collections/back-to-school', target: '', tag: null, product0: {"id":"2c62e3b5-4038-4a26-b89d-e84833580028","title":"Hiphop Cross Hot Diamond Jorts Denim Shorts","brief":"Note: This product features rhinestone embellishments. Hand wash or turn inside out and use a laundry bag on gentle cycle.","vendor":"SOPULA","vendor_url":"","has_only_default_variant":false,"requires_shipping":true,"taxable":true,"published":true,"handle":"hiphop-cross-hot-diamond-jorts-denim-shorts-8sam","spu":"XH-219420-HWE","need_variant_image":true,"updated_at":"2025-07-11T10:57:15Z","created_at":"2025-06-17T02:46:33Z","mixed_wholesale":false,"min_price_variant":{"id":"eacda2c6-fe94-492d-bd96-c51bfc6832cf","title":"Black-S","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-S","barcode":"","position":1,"option1":"Black","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":""},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=eacda2c6-fe94-492d-bd96-c51bfc6832cf","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"S"}],"off_ratio":10},"tags":"shorts,jorts,new-\u73b0\u8d27,sale,new-flash","available":true,"price_min":"57.6","price":"57.6","price_max":"57.6","compare_at_price_min":"64","compare_at_price":"64","compare_at_price_max":"64","retail_price_min":"64","retail_price_max":"64","url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam","published_at":"2025-06-17T02:46:33Z","variants_count":10,"image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"options":[{"id":"f4033803-0a83-47f6-851d-439b7ff454ee","name":"Color","position":1,"values":["Black","Blue"]},{"id":"02e19884-adf9-407b-b254-d8dec3850876","name":"Size","position":2,"values":["S","M","L","XL","2XL"]}],"variants":[{"id":"eacda2c6-fe94-492d-bd96-c51bfc6832cf","title":"Black-S","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-S","barcode":"","position":1,"option1":"Black","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=eacda2c6-fe94-492d-bd96-c51bfc6832cf","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"S"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"8648b1df-77e1-42fa-a7ed-5075b77af256","title":"Black-M","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-M","barcode":"","position":2,"option1":"Black","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=8648b1df-77e1-42fa-a7ed-5075b77af256","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"M"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"32ec0cf3-6b60-472d-a29a-a4708b2a4130","title":"Black-L","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-L","barcode":"","position":3,"option1":"Black","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=32ec0cf3-6b60-472d-a29a-a4708b2a4130","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"L"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"8b38c0e5-3714-4417-aaaf-7ca4fb3c4e49","title":"Black-XL","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-XL","barcode":"","position":4,"option1":"Black","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=8b38c0e5-3714-4417-aaaf-7ca4fb3c4e49","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"XL"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"582cf71a-3e32-4c12-8838-5c0703ecc864","title":"Black-2XL","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Black-2XL","barcode":"","position":5,"option1":"Black","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=582cf71a-3e32-4c12-8838-5c0703ecc864","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"2XL"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"969e4e73-ad6f-46be-80ba-c122ac913a30","title":"Blue-S","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Blue-S","barcode":"","position":6,"option1":"Blue","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=969e4e73-ad6f-46be-80ba-c122ac913a30","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"S"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"cc23b877-18c7-40ad-b8ec-cffbf7c3b8b0","title":"Blue-M","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Blue-M","barcode":"","position":7,"option1":"Blue","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=cc23b877-18c7-40ad-b8ec-cffbf7c3b8b0","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"M"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"7e6d5b3b-a121-408e-a16b-91d76ddcd2f7","title":"Blue-L","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Blue-L","barcode":"","position":8,"option1":"Blue","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=7e6d5b3b-a121-408e-a16b-91d76ddcd2f7","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"L"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"6a10bfdf-30df-4494-9830-243bfc55a5b4","title":"Blue-XL","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Blue-XL","barcode":"","position":9,"option1":"Blue","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=6a10bfdf-30df-4494-9830-243bfc55a5b4","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"XL"}],"off_ratio":10,"flashsale_info":[],"sales":null},{"id":"70dcff9c-e96d-4759-a6a3-72c1b17c6b94","title":"Blue-2XL","weight_unit":"g","inventory_quantity":0,"sku":"XH-219420-HWE-Blue-2XL","barcode":"","position":10,"option1":"Blue","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},"wholesale_price":[{"price":57.6,"min_quantity":1}],"weight":"600","compare_at_price":"64","price":"57.6","retail_price":"64","available":true,"url":"\/products\/hiphop-cross-hot-diamond-jorts-denim-shorts-8sam?variant=70dcff9c-e96d-4759-a6a3-72c1b17c6b94","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"2XL"}],"off_ratio":10,"flashsale_info":[],"sales":null}],"images":[{"src":"\/\/img.staticdj.com\/1e69b3e904dec4a07432e909605279bb.jpeg","path":"1e69b3e904dec4a07432e909605279bb.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/8c35a9d31643bf9f29c64d770bfaa108.jpeg","path":"8c35a9d31643bf9f29c64d770bfaa108.jpeg","width":1500,"height":2000,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","path":"5dfc0453a529c959e0e4c23ce1bd2e28.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/29650e31749f28c097b02fe65e061433.jpeg","path":"29650e31749f28c097b02fe65e061433.jpeg","width":1200,"height":1600,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/d4d3d544f143a97bf9518a7c871c0dce.jpeg","path":"d4d3d544f143a97bf9518a7c871c0dce.jpeg","width":7008,"height":4672,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":1.5},{"src":"\/\/img.staticdj.com\/13bcc733c5df1d1ae4672763fd393134.jpeg","path":"13bcc733c5df1d1ae4672763fd393134.jpeg","width":7008,"height":4672,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":1.5},{"src":"\/\/img.staticdj.com\/a58944b80a5af025cc1e57e6028d79ef.jpeg","path":"a58944b80a5af025cc1e57e6028d79ef.jpeg","width":7008,"height":4672,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":1.5},{"src":"\/\/img.staticdj.com\/a8b1912123de4ae2f4f578297d45a686.jpeg","path":"a8b1912123de4ae2f4f578297d45a686.jpeg","width":7008,"height":4672,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":1.5},{"src":"\/\/img.staticdj.com\/50d040efcf9f66f9d17857a51ef67c43.jpeg","path":"50d040efcf9f66f9d17857a51ef67c43.jpeg","width":7008,"height":4672,"alt":"Hiphop Cross Hot Diamond Jorts Denim Shorts","aspect_ratio":1.5}],"retail_price":"64","off_ratio":10,"price_varies":true} , children: [ { title: "Flash Sale", url: '/collections/flash-sale', target: '', tag: null, children: [ ] }, { title: "Hot New Drops", url: '/collections/holiday', target: '', tag: null, children: [ ] }, ] }, { id: 80647319, index: 5, title: "STYLES", url: '', target: '', tag: null, product0: null , children: [ { title: "Western & Cowboy", url: '/collections/rodeo-cowboy', target: '', tag: null, children: [ ] }, { title: "Street Chic", url: '/collections/street-chic', target: '', tag: null, children: [ ] }, { title: "Faith & Gods", url: '/collections/faith-gods', target: '', tag: null, children: [ ] }, { title: "Japanese Art", url: '/collections/japanese-art', target: '', tag: null, children: [ ] }, { title: "Hip-Hop & Cartoon", url: '/collections/cartoon', target: '', tag: null, children: [ ] }, { title: "Sports & Stars", url: '/collections/sports-star', target: '', tag: null, children: [ ] }, { title: "Racing Spirit", url: '/collections/racing-spirit', target: '', tag: null, children: [ ] }, { title: "Abstract", url: '/collections/abstract', target: '', tag: null, children: [ ] }, { title: "Slogans", url: '/collections/slogan', target: '', tag: null, children: [ ] }, ] }, { id: 80647339, index: 6, title: "CUSTOM", url: '/collections/custom', target: '', tag: null, product0: {"id":"695bee0e-7180-4b4d-99d8-31df8929752e","title":"Sopula Essential 100% Cotton Blank T-Shirt","brief":"","vendor":"SOPULA","vendor_url":"","has_only_default_variant":false,"requires_shipping":true,"taxable":true,"published":true,"handle":"sopula-essential-100-cotton-blank-t-shirt","spu":"CP-139337-FY","need_variant_image":true,"updated_at":"2025-06-25T10:07:33Z","created_at":"2025-01-04T09:26:45Z","mixed_wholesale":false,"min_price_variant":{"id":"629c4852-962e-4ca4-9b1c-a91692d09f73","title":"Black-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-S","barcode":"","position":1,"option1":"Black","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":""},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=629c4852-962e-4ca4-9b1c-a91692d09f73","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"S"}],"off_ratio":0},"tags":"Blank Clothes,custom,test","available":true,"price_min":"30","price":"30","price_max":"30","compare_at_price_min":"30","compare_at_price":"30","compare_at_price_max":"30","retail_price_min":"30","retail_price_max":"30","url":"\/products\/sopula-essential-100-cotton-blank-t-shirt","published_at":"2025-01-04T09:26:45Z","variants_count":36,"image":{"src":"\/\/img.staticdj.com\/e3ef47e1afe02797384cd210687d8952.jpeg","path":"e3ef47e1afe02797384cd210687d8952.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},"options":[{"id":"6dbb39fb-a3ce-49d7-ba23-60eaa3cf89ec","name":"Color","position":1,"values":["Black","White","Beige","Pink","Blue","Grey"]},{"id":"ebd53242-d0bc-4387-bb7c-19cc1b88218f","name":"Size","position":2,"values":["S","M","L","XL","2XL","3XL"]}],"variants":[{"id":"629c4852-962e-4ca4-9b1c-a91692d09f73","title":"Black-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-S","barcode":"","position":1,"option1":"Black","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=629c4852-962e-4ca4-9b1c-a91692d09f73","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"415fc18d-aab7-445a-ae12-a7574a5ed862","title":"Black-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-M","barcode":"","position":2,"option1":"Black","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=415fc18d-aab7-445a-ae12-a7574a5ed862","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"1037309a-35ef-4c48-9aee-561dcb504cf4","title":"Black-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-L","barcode":"","position":3,"option1":"Black","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=1037309a-35ef-4c48-9aee-561dcb504cf4","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"e7a78551-20f6-4c25-b686-7062d60b098b","title":"Black-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-XL","barcode":"","position":4,"option1":"Black","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=e7a78551-20f6-4c25-b686-7062d60b098b","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"1f9422bb-d0c6-4384-aa8f-508b630f0aa6","title":"Black-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-2XL","barcode":"","position":5,"option1":"Black","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=1f9422bb-d0c6-4384-aa8f-508b630f0aa6","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"e0a7790a-6657-4af2-820a-1bcca56a9afd","title":"Black-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Black-3XL","barcode":"","position":6,"option1":"Black","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/374aee8cfa8748b054c2948381d22fbb.jpeg","path":"374aee8cfa8748b054c2948381d22fbb.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=e0a7790a-6657-4af2-820a-1bcca56a9afd","available_quantity":999999999,"options":[{"name":"Color","value":"Black"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"cb42f85d-e9fc-42a9-94a9-cdf579c142e8","title":"White-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-S","barcode":"","position":7,"option1":"White","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=cb42f85d-e9fc-42a9-94a9-cdf579c142e8","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"126ca394-7a21-4ad5-a9cd-3d6a343e8f63","title":"White-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-M","barcode":"","position":8,"option1":"White","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=126ca394-7a21-4ad5-a9cd-3d6a343e8f63","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"15ce6f6c-b9de-4fd6-9487-5a6e58bf225f","title":"White-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-L","barcode":"","position":9,"option1":"White","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=15ce6f6c-b9de-4fd6-9487-5a6e58bf225f","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"b62254e7-658a-471a-9ede-37b39f5027dd","title":"White-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-XL","barcode":"","position":10,"option1":"White","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=b62254e7-658a-471a-9ede-37b39f5027dd","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"d5afc5c3-8946-4bfb-9917-e2af77928d73","title":"White-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-2XL","barcode":"","position":11,"option1":"White","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=d5afc5c3-8946-4bfb-9917-e2af77928d73","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"5cb8e913-9dfd-48c3-aeee-3f8e78739511","title":"White-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-White-3XL","barcode":"","position":12,"option1":"White","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/06d128a826997c0f9b97636b956155fd.jpeg","path":"06d128a826997c0f9b97636b956155fd.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=5cb8e913-9dfd-48c3-aeee-3f8e78739511","available_quantity":999999999,"options":[{"name":"Color","value":"White"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"45103ef8-5676-494d-9d4b-f66b140a4234","title":"Beige-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-S","barcode":"","position":13,"option1":"Beige","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=45103ef8-5676-494d-9d4b-f66b140a4234","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"956adf30-9922-499d-b889-9b856488fdc9","title":"Beige-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-M","barcode":"","position":14,"option1":"Beige","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=956adf30-9922-499d-b889-9b856488fdc9","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"e3e7939a-52b9-433a-affe-c442aaa4722f","title":"Beige-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-L","barcode":"","position":15,"option1":"Beige","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=e3e7939a-52b9-433a-affe-c442aaa4722f","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"4250809d-36f6-452c-ab2a-0b67a0963b71","title":"Beige-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-XL","barcode":"","position":16,"option1":"Beige","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=4250809d-36f6-452c-ab2a-0b67a0963b71","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"49c6aecb-758b-49e0-b0b7-28774af67f6d","title":"Beige-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-2XL","barcode":"","position":17,"option1":"Beige","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=49c6aecb-758b-49e0-b0b7-28774af67f6d","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"5c59e278-973c-4255-bf52-c2275a82b2fb","title":"Beige-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Beige-3XL","barcode":"","position":18,"option1":"Beige","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/252cac93ea7fac17ff3b8c62c375e827.jpeg","path":"252cac93ea7fac17ff3b8c62c375e827.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=5c59e278-973c-4255-bf52-c2275a82b2fb","available_quantity":999999999,"options":[{"name":"Color","value":"Beige"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"763f0822-2367-4033-9b06-54089a6f0f7c","title":"Pink-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-S","barcode":"","position":19,"option1":"Pink","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=763f0822-2367-4033-9b06-54089a6f0f7c","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"53dfe296-7595-47dd-b3bd-7a871d08d732","title":"Pink-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-M","barcode":"","position":20,"option1":"Pink","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=53dfe296-7595-47dd-b3bd-7a871d08d732","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"2aa4be92-1be1-4c87-bd7e-e85384ca57f7","title":"Pink-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-L","barcode":"","position":21,"option1":"Pink","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=2aa4be92-1be1-4c87-bd7e-e85384ca57f7","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"77d523d9-2e23-4e40-9f5b-138c403761d8","title":"Pink-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-XL","barcode":"","position":22,"option1":"Pink","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=77d523d9-2e23-4e40-9f5b-138c403761d8","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"d0a5757e-75de-4955-8679-4b992c2897cf","title":"Pink-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-2XL","barcode":"","position":23,"option1":"Pink","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=d0a5757e-75de-4955-8679-4b992c2897cf","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"e0eac250-4c7a-4932-a938-0a0ecc6b4a04","title":"Pink-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Pink-3XL","barcode":"","position":24,"option1":"Pink","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/ae00c90c69e1b0c756918458846b4d9b.jpeg","path":"ae00c90c69e1b0c756918458846b4d9b.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=e0eac250-4c7a-4932-a938-0a0ecc6b4a04","available_quantity":999999999,"options":[{"name":"Color","value":"Pink"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"fae89e80-2117-4506-8333-f01c750acaac","title":"Blue-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-S","barcode":"","position":25,"option1":"Blue","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=fae89e80-2117-4506-8333-f01c750acaac","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"2b2016a8-1a0e-4d2b-9c7f-428f1e98b4f3","title":"Blue-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-M","barcode":"","position":26,"option1":"Blue","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=2b2016a8-1a0e-4d2b-9c7f-428f1e98b4f3","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"eb1a9909-c1e6-4117-bc2f-b92983f1a72c","title":"Blue-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-L","barcode":"","position":27,"option1":"Blue","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=eb1a9909-c1e6-4117-bc2f-b92983f1a72c","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"639a3f47-eb3c-4322-95fd-0acb3a73a952","title":"Blue-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-XL","barcode":"","position":28,"option1":"Blue","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=639a3f47-eb3c-4322-95fd-0acb3a73a952","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"0332a24d-a1d1-47d5-b1d8-b99143d538f7","title":"Blue-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-2XL","barcode":"","position":29,"option1":"Blue","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=0332a24d-a1d1-47d5-b1d8-b99143d538f7","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"3e19a8d2-4f4a-46af-8d31-9c4c143f2936","title":"Blue-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Blue-3XL","barcode":"","position":30,"option1":"Blue","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/e87f108db11b627f24dcc0ef1f09e673.jpeg","path":"e87f108db11b627f24dcc0ef1f09e673.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=3e19a8d2-4f4a-46af-8d31-9c4c143f2936","available_quantity":999999999,"options":[{"name":"Color","value":"Blue"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"6d48e08b-1699-40b1-8481-e4b627bfd0fa","title":"Grey-S","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-S","barcode":"","position":31,"option1":"Grey","option2":"S","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=6d48e08b-1699-40b1-8481-e4b627bfd0fa","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"cd509933-67a2-4837-a622-5ef6f569f1b1","title":"Grey-M","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-M","barcode":"","position":32,"option1":"Grey","option2":"M","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=cd509933-67a2-4837-a622-5ef6f569f1b1","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"bd3b8924-380f-4053-801f-75ae525135dc","title":"Grey-L","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-L","barcode":"","position":33,"option1":"Grey","option2":"L","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=bd3b8924-380f-4053-801f-75ae525135dc","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"382db3f1-201b-4ef8-bab1-7d0bf4061e37","title":"Grey-XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-XL","barcode":"","position":34,"option1":"Grey","option2":"XL","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=382db3f1-201b-4ef8-bab1-7d0bf4061e37","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"79448f62-bbb5-430b-8342-f75229964e2d","title":"Grey-2XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-2XL","barcode":"","position":35,"option1":"Grey","option2":"2XL","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=79448f62-bbb5-430b-8342-f75229964e2d","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"b4fb6496-f9a0-4ce8-99b2-51c391a549ad","title":"Grey-3XL","weight_unit":"g","inventory_quantity":0,"sku":"CP-139337-FY-Gray-3XL","barcode":"","position":36,"option1":"Grey","option2":"3XL","option3":"","image":{"src":"\/\/img.staticdj.com\/5f9c3e324cc80d8a7a96f72043a4af36.jpeg","path":"5f9c3e324cc80d8a7a96f72043a4af36.jpeg","width":1500,"height":1500,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":1},"wholesale_price":[{"price":30,"min_quantity":1}],"weight":"230","compare_at_price":"30","price":"30","retail_price":"30","available":true,"url":"\/products\/sopula-essential-100-cotton-blank-t-shirt?variant=b4fb6496-f9a0-4ce8-99b2-51c391a549ad","available_quantity":999999999,"options":[{"name":"Color","value":"Grey"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null}],"images":[{"src":"\/\/img.staticdj.com\/e3ef47e1afe02797384cd210687d8952.jpeg","path":"e3ef47e1afe02797384cd210687d8952.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/0417bb37bc1e7f7435448acf88fb0543.jpeg","path":"0417bb37bc1e7f7435448acf88fb0543.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/125f2a33513819acd219121dc56f8281.jpeg","path":"125f2a33513819acd219121dc56f8281.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/b93bdf06571354dbc3652a56ad3a6266.jpeg","path":"b93bdf06571354dbc3652a56ad3a6266.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/4c862ee1a19b266cd8d5c3eba7196939.jpeg","path":"4c862ee1a19b266cd8d5c3eba7196939.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/743f5c77ac817468889dd31ba9ca3559.jpeg","path":"743f5c77ac817468889dd31ba9ca3559.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/743a6df8be3f94211a385011ee723fc5.jpeg","path":"743a6df8be3f94211a385011ee723fc5.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/7b03f61d3896c3618293828e9930d7cf.jpeg","path":"7b03f61d3896c3618293828e9930d7cf.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/322fb4f719c51079325bb91b45c113ff.jpeg","path":"322fb4f719c51079325bb91b45c113ff.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75},{"src":"\/\/img.staticdj.com\/f39619b4af82aacff45264013f3a6c39.jpeg","path":"f39619b4af82aacff45264013f3a6c39.jpeg","width":1500,"height":2000,"alt":"Sopula Essential 100% Cotton Blank T-Shirt","aspect_ratio":0.75}],"retail_price":"30","off_ratio":0,"price_varies":true} , children: [ { title: "Classic Custom Tee", url: '/products/sopula-essential-100-cotton-blank-t-shirt', target: '', tag: null, children: [ ] }, { title: "Oversized Custom Tee", url: '/products/sopula-essential-heavyweight-oversized-tee', target: '', tag: null, children: [ ] }, { title: "Acid Wash Custom Tee", url: '/products/custom-essential-heavyweight-oversized-washed-t-shirt', target: '', tag: null, children: [ ] }, { title: "Oversized Custom Tank Top", url: '/products/sopula-mens-oversized-heavyweight-cotton-tank-tops-sleeveless-shirt', target: '', tag: null, children: [ ] }, { title: "Acid Wash Custom Hoodie", url: '/products/sopula-unisex-street-vintage-100-cotton-washed-hoodie', target: '', tag: null, children: [ ] }, ] }, { id: 80647351, index: 7, title: "Track Order", url: '/account/order-lookup', target: '', tag: null, product0: null , children: [ ] }, ].slice(offset); var hasChild = linkList.some(v => (v.children && v.children.length || v.product0)); if (!hasChild) { return `
${linkList.map(item => `
${item.url ? `
${item.title}
${item.tag ? `
${item.tag.label}
` : ''}
`: `
${item.title}
${item.tag ? `
${item.tag.label}
` : ''}
`} ${item.children.length ? `
` : ''}
`).join('')}
` } else { return `
${linkList.map(item => `
${item.url ? `
${item.title}
${item.tag ? `
${item.tag.label}
` : ''}
`: `
${item.title}
${item.tag ? `
${item.tag.label}
` : ''}
`} ${item.children.length ? `
` : ''}
`).join('')}
${linkList.map(item => `
${item.children ? `
${item.children.map(link => { return `
${link.url ? `
${link.title}
${link.tag ? `
${link.tag.label}
` : ''}
`: `
${link.title}
${link.tag ? `
${link.tag.label}
` : ''}
`} ${link.children ? `
${link.children.map(link_3 => `
${link_3.url ? `
${link_3.title}
${link_3.tag ? `
${link_3.tag.label}
` : ''}
`: `
${link_3.title}
${link_3.tag ? `
${link_3.tag.label}
` : ''}
`}
`).join('')}
` : ''}
`}).join('')}
${function() { const data = item.product0; if (!data) return ''; return `
` }()}
` : ''}
`).join('')}
` } }()}
Search
${item.word}
Search
Search
Search
Search
${item.word}
${ function(){ data.historyList = data.historyList.filter(item => item.trim() !== ''); data.isShowHistory = data.isShowHistory && data.historyList.length > 0; }() }
Recently searched
${item}
Hot searches
${item.word}
Results
${item.highlightHtml}
const template_name = SHOPLAZZA?.meta?.page?.template_name || ''; const SEARCH_URL = '/search'; const TAG = 'spz-custom-smart-search-location'; const SMART_PRODUCR_SEARCH_WRAP_CLASSNAME = 'app-smart-product-search-container'; const THEME_NAME = window.SHOPLAZZA.theme.merchant_theme_name.replace(/ /g,''); const BREAKPOINT = 960; const DELAY = 300; function diffThemeName(themeNameA, themeNameB){ return themeNameA.toLocaleLowerCase().includes(themeNameB.toLocaleLowerCase()) } const HEADER_DOM_MAP = { eva: 'header .header_grid_layout', geek: `.header-mobile-inner-container`, onePage: 'header .header', wind: 'header #header-nav', nova: 'header .header', hero: 'header .header__nav', 'flash': '#shoplaza-section-header>div>div', 'lifestyle': '#shoplaza-section-header .header__wrapper' } let HEADER_DOM = 'header'; Object.keys(HEADER_DOM_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { HEADER_DOM = HEADER_DOM_MAP[themeName]; } }) const SEARCH_ICON_CLASS_MAP = { 'flash': 'app-smart-icon-search-large-flash', 'hero': 'app-smart-icon-search-large-hero', 'geek': 'app-smart-icon-search-large-geek', 'nova': 'app-smart-icon-search-large-nova', }; let SEARCH_ICON_CLASS = 'app-smart-icon-search-large-default'; Object.keys(SEARCH_ICON_CLASS_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { SEARCH_ICON_CLASS = SEARCH_ICON_CLASS_MAP[themeName]; } }) class SpzCustomSmartSearchLocation extends SPZ.BaseElement { constructor(element) { super(element); this.mobileHeaderPluginParentEle = null; this.outsideCarouselIndex = 0; this.insideCarouselIndex = 0; this.searchItemType = 'icon'; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.init(); this.listenerResize(); this.initRegisterActions(); } addIconClass(){ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>{ e.classList.add(SEARCH_ICON_CLASS) }); } moveIcon(){ if (!diffThemeName(THEME_NAME, 'lifestyle')) return; if (this.searchItemType === 'input') return; if (this.isDesktop()) return; const smart_search_dom = document.querySelector('#app-smart-product-search-container-73'); if (!smart_search_dom) return; const hasMovedIcon = !!document.querySelector('.header__wrapper .container .row.header>div>#app-smart-product-search-container-73'); if (hasMovedIcon) return; const headerDivList = document.querySelectorAll('.header__wrapper .container .row.header>div'); const iconBoxDom = headerDivList[headerDivList.length-1] iconBoxDom.appendChild(smart_search_dom, iconBoxDom.firstChild); } init() { this.addIconClass(); this.moveIcon(); if ( this.searchItemType === 'input' ) { document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'none'); const mobileSmartSearchDom = document.querySelector(`.smart-search-mobile-container .app-smart-product-search-wrap`); if ( this.isDesktop() ) { document.querySelector(`#app-smart-product-search-container-73`).style="display: block"; if (mobileSmartSearchDom) { document.querySelector(`#app-smart-product-search-container-73`).appendChild(mobileSmartSearchDom); } }else{ if( template_name=='search' ) return; if (!document.querySelector(`.smart-search-mobile-container`)) { const appSmartSearchContainer = document.createElement('div'); appSmartSearchContainer.classList.add('smart-search-mobile-container'); appSmartSearchContainer.classList.add('smart-search-mobile-container-'+THEME_NAME.toLocaleLowerCase()); document.querySelector(HEADER_DOM).appendChild(appSmartSearchContainer); } if (!mobileSmartSearchDom) { document.querySelector(`.smart-search-mobile-container`).appendChild( document.querySelector(`.app-smart-product-search-wrap`) ) } } }else{ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'flex'); } // PC-end not load if (this.isDesktop()) { return; } if (!window.__isLoadAppSmartSearch__) { this.initSmartSearch(); console.log('__isLoadAppSmartSearch__'); } // B-end must reload if (window.self === window.top && !window.__isLoadAppSmartSearch__) { window.__isLoadAppSmartSearch__ = true; } } initSmartSearch() { if (this.hasMobileUpperRightPlugin()) { this.showMobileSmartSearch(); } else { this.addMobileSmartSearch(); } } initRegisterActions(){ this.registOnSearchInputChange(); this.registOnSearchFormSubmit(); this.registOnOutsideCarouselIndexChange(); this.registOnInsideCarouselIndexChange(); this.registGetSearchItemType(); this.registGenerateHotKeywordList(); this.registerAction('onTapHotWord',(invocation)=>{ this.onTapHotWord(invocation.args.type); }); } registOnSearchInputChange(){ this.registerAction('onSearchInputChange',(invocation)=>{ const keyword = invocation.args.keyword; if (keyword === null || !keyword.length) { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: block'; }); } else { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: none'; }); } }) } registOnSearchFormSubmit(){ this.registerAction('onSearchFormSubmit',(invocation)=>{ const event = invocation.args.event; const keywordArray = event.q || []; const keyword = keywordArray[0]; if (keyword!==null && keyword.length) { this.handleSearchSubmit_(keywordArray,1); } else { this.onTapHotWord('inside') } }) } handleSearchSubmit_(value, retryNum){ SPZ.whenApiDefined(document.getElementById('app-smart-search-73')) .then((ljsSearch) => { try{ ljsSearch.handleSearchSubmit_({ value: value }) }catch(e){ console.log('catch error',retryNum) if( 3 > retryNum ){ this.handleSearchSubmit_(value, retryNum + 1); return; } const searchStr = value[0] || ''; const searchResult = ljsSearch.setThinkSearchData_(searchStr); ljsSearch.afterSearching({ query: searchResult.query, url: `${SEARCH_URL}?q=${searchStr}`, queryType: searchResult.queryType, }) } }) } registOnOutsideCarouselIndexChange(){ this.registerAction('onOutsideCarouselIndexChange',(invocation)=>{ this.outsideCarouselIndex = invocation.args.index || 0; }) } registOnInsideCarouselIndexChange(){ this.registerAction('onInsideCarouselIndexChange',(invocation)=>{ this.insideCarouselIndex = invocation.args.index || 0; }) } registGetSearchItemType(searchItemType){ this.registerAction('getSearchItemType',(invocation)=>{ SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-73')) .then((appSmartSearchOutsideItem) => { const search_item_type = appSmartSearchOutsideItem.getData()?.search_item_type; this.searchItemType = search_item_type || this.searchItemType; this.init(); }) }) } registGenerateHotKeywordList(){ this.registerAction('generateHotKeywordList',(invocation)=>{ const search_keywords = invocation.args?.data?.data?.hotKeywordList || []; const isShowHotKeyword = invocation.args?.data?.data?.isShowHotKeyword || false; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-73')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const new_search_keywords = search_keywords.map((item, index) => { item.url_obj = item.url_obj || {}; const hotwordItem = hotwords.find(e=>e.word === item.word); if (hotwordItem) { item.icon = hotwordItem.icon || ''; } if (!item.urlObj || !item.urlObj.url) { item.urlObj = { ...item.url_obj, url: item.url_obj.type === 'search' ? `${SEARCH_URL}?q=${item.word}` : item.url_obj.url, }; } return item; }); document.querySelectorAll('.app-hot-keyword-render-child') .forEach((ele) => { SPZ.whenApiDefined(ele) .then((hotWordsChildDom) => { hotWordsChildDom.render({ list: new_search_keywords, isShowHotKeyword: isShowHotKeyword, }); }) }); }) }); } onTapHotWord(type){ const index = type === 'inside' ? this.insideCarouselIndex : this.outsideCarouselIndex; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-73')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const currentHotwordItem = hotwords[index] || null; if (currentHotwordItem && currentHotwordItem.url_obj) { currentHotwordItem.url_obj.url = currentHotwordItem.url_obj.type === 'search' ? `${SEARCH_URL}?q=${currentHotwordItem.word}` : currentHotwordItem.url_obj.url; } SPZ.whenApiDefined(document.getElementById('app-smart-search-73')) .then((ljsSearch) => { if (currentHotwordItem) { ljsSearch.handleHotKeyword_({ word: currentHotwordItem.word, query_type: currentHotwordItem.type, url: currentHotwordItem.url_obj?.url, }); } else { this.handleSearchSubmit_([''],1); } }) }) } getOutsideCarouselConfig(){ return SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-73')) .then((appSmartSearchOutsideItem) => { return { ...appSmartSearchOutsideItem.getData(), outsideCarouselIndex: this.outsideCarouselIndex, } }) } listenerResize() { window.removeEventListener('resize', window.smartSearchResizeCallback); window.smartSearchResizeCallback = SPZCore.Types.debounce( this.win, () => { this.init(); }, DELAY ); window.addEventListener('resize', window.smartSearchResizeCallback); } isDesktop() { const mediaQueryList = window.matchMedia(`(min-width: ${BREAKPOINT}px)`); return mediaQueryList.matches; } hasMobileUpperRightPlugin() { return !['geek', 'flash', 'boost'].includes(THEME_NAME.toLocaleLowerCase()); } showMobileSmartSearch() { this.mobileHeaderPluginParentEle = this.getMobileHeaderPluginParentEle(); this.setMobileHeaderIconsPluginStyle(this.mobileHeaderPluginParentEle); } getMobileHeaderPluginParentEle() { const MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP = { nova: '.header__mobile #header__plugin-container', hero: '.header__icons .tw-flex.tw-justify-end.tw-items-center.tw-space-x-7', onePage: '.header__mobile #header__plugin-container', wind: '#header-icons .flex.justify-end.items-center', eva: '#header__icons .plugin_content' }; const headerPluginParentSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP) ); return document.querySelector(headerPluginParentSelector); } setMobileHeaderIconsPluginStyle(pluginParentEle) { if (!pluginParentEle) { return; } const containHidden = pluginParentEle.classList.contains('md:hidden'); const containTwHidden = pluginParentEle.classList.contains('md:tw-hidden'); if (containHidden || containTwHidden) { Array.from(pluginParentEle.children).forEach((pluginElement) => { if (!this.hasSmartSearchPlugin(pluginElement)) { pluginElement.style.display = 'none'; } }); pluginParentEle.classList.remove('md:hidden', 'md:tw-hidden'); } else { const smartSearchPluginElement = Array.from(pluginParentEle.children).find( (pluginElement) => { return this.hasSmartSearchPlugin(pluginElement); } ); smartSearchPluginElement.style.display = 'block'; } } hasSmartSearchPlugin(pluginElement) { return ( pluginElement.classList.contains(`${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`) || pluginElement.querySelectorAll(`.${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`).length > 0 ); } addMobileSmartSearch() { this.mobileHeaderIconsEle = this.getMobileHeaderIconsEle(); this.smartSearchWrapEle = this.getSmartSearchWrapEle(); this.appendSmartSearchToHeader(); } getMobileHeaderIconsEle() { // Must be the parent element of the plugin const MOBILE_HEADER_ICONS_ELE_MAP = { geek: '#header-mobile-container .flex.items-center.justify-end.flex-shrink-0', flash: '#header-layout .header__icons', boost: '.header__mobile-bottom .tw-flex.tw-items-center.tw-justify-end.tw-flex-1' }; const headerIconsSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_ICONS_ELE_MAP) ); return document.querySelector(headerIconsSelector); } getSmartSearchWrapEle() { const smartSearchWrapEle = document.querySelector(this.getSmartSearchWrapSelector()); if (!smartSearchWrapEle) { return null; } return smartSearchWrapEle; } appendSmartSearchToHeader() { if (!this.smartSearchWrapEle) { return; } this.mobileHeaderIconsEle.insertAdjacentElement('afterbegin', this.smartSearchWrapEle); } getSmartSearchWrapSelector() { const PLUGIN_POSITION = { DRAWER: 'drawer', HEADER_TOP: 'headerTop' }; // only one this plugin of ancestor element const MOBILE_PLUGIN_POSITION_ELE_MAP = { [PLUGIN_POSITION.DRAWER]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header__drawer' }, [PLUGIN_POSITION.HEADER_TOP]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header-content .logo-wrap' } }; const MbPluginPositionInTheme = [ ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.DRAWER]), ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.HEADER_TOP]) ]; return Object.values(MbPluginPositionInTheme).reduce((pre, ancestor) => { if (pre === '') { return `${ancestor} .app-smart-product-search-container`; } if (pre.includes(ancestor)) { return pre; } return `${pre},${ancestor} .app-smart-product-search-container`; }, ''); } combineMultipleSelectors(selectorList) { return selectorList.reduce((pre, selector) => { if (pre === '') { return `${selector}`; } if (pre.includes(selector)) { return pre; } return `${pre},${selector}`; }, ''); } } SPZ.defineElement(TAG, SpzCustomSmartSearchLocation);
function setSearchUrl(searchValue) { return Promise.resolve({ url: '/search?q=' + searchValue }); } exportFunction('setSearchUrl', setSearchUrl);
function setSearchUrl(searchValue) { return Promise.resolve({ url: '/search?q=' + searchValue }); } exportFunction('setSearchUrl', setSearchUrl);
Log in
Create an account
${data.data.count > 99 ? '99+' : data.data.count}
${data.line_items.map(item => { return `
${item.product_title}
${item.options.map(o => `
${o.name}:
${o.value}
`).join('')} ${(item.parsedProperties || []).map((propertie)=>{ if (propertie.isImage){ return `
${propertie.name}:
View image
` }else{ return `
${propertie.name}:
${propertie.value}
` } }).join('')}
Free gift
*${item.quantity}
${ (item.discount_applications || []).map(discount_item => { const discount_item_amount = discount_item.discount_amount || discount_item.amount || ''; return `
${discount_item.title}
(-
)
` }).join('') }
`; }).join('')}
Goes great with
Add order note
Add order note
Add order note
Add order note
${function() { const freeAmount = 79; const totalPrice = data?.total_price || data?.cart?.total_price || 0; const amountDiff = freeAmount - totalPrice; const percentDiff = (amountDiff > 0 ? (totalPrice / freeAmount * 100).toFixed(2) : 100) + '%'; const spendTip = "Buy {amount} more to enjoy Free Shipping"; let tipText = "Congrats! Your order is free delivery\ud83c\udf89"; if (amountDiff > 0) { tipText = spendTip.replace('{amount}', `
`); } return `
${tipText}
`; }()}
Total:
${data.total_discount > 0 ? ( `
Save
${data.discount_applications.length > 0 && data.discount_applications.map(item => { return `
${item.title}:
` }).join('')}
` ) : ''}
CHECKOUT
Taxes and shipping calculated at checkout
Your cart is currently empty.
Close
NEW DROP
2nd 10% OFF
NEW DROP
2nd 10% OFF
New Graphic Tees
New Tank Tops
New Shorts
New Designs
BEST SELLER
CLOTHING
$60 OFF
CLOTHING
$60 OFF
T-Shirts
T-Shirts
Graphic Tees
Washed Tees
Crop Tees
Tank Tops
Jerseys
Hoodies
Hoodies
Washed Hoodies
Zip Up Hoodies
Cropped Hoodies
Bottoms
Bottoms
Shorts
Jorts
Jeans
Pants
Essentials
Essentials
Combo Packs
BACK TO SCHOOL
BACK TO SCHOOL
Flash Sale
limited
Hot New Drops
STYLES
STYLES
Western & Cowboy
Street Chic
Faith & Gods
Japanese Art
Hip-Hop & Cartoon
Sports & Stars
Racing Spirit
Abstract
Slogans
CUSTOM
CUSTOM
Classic Custom Tee
Oversized Custom Tee
Acid Wash Custom Tee
Oversized Custom Tank Top
Acid Wash Custom Hoodie
Track Order
Search
${item.word}
Search
Search
Search
Search
${item.word}
${ function(){ data.historyList = data.historyList.filter(item => item.trim() !== ''); data.isShowHistory = data.isShowHistory && data.historyList.length > 0; }() }
Recently searched
${item}
Hot searches
${item.word}
Results
${item.highlightHtml}
const template_name = SHOPLAZZA?.meta?.page?.template_name || ''; const SEARCH_URL = '/search'; const TAG = 'spz-custom-smart-search-location'; const SMART_PRODUCR_SEARCH_WRAP_CLASSNAME = 'app-smart-product-search-container'; const THEME_NAME = window.SHOPLAZZA.theme.merchant_theme_name.replace(/ /g,''); const BREAKPOINT = 960; const DELAY = 300; function diffThemeName(themeNameA, themeNameB){ return themeNameA.toLocaleLowerCase().includes(themeNameB.toLocaleLowerCase()) } const HEADER_DOM_MAP = { eva: 'header .header_grid_layout', geek: `.header-mobile-inner-container`, onePage: 'header .header', wind: 'header #header-nav', nova: 'header .header', hero: 'header .header__nav', 'flash': '#shoplaza-section-header>div>div', 'lifestyle': '#shoplaza-section-header .header__wrapper' } let HEADER_DOM = 'header'; Object.keys(HEADER_DOM_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { HEADER_DOM = HEADER_DOM_MAP[themeName]; } }) const SEARCH_ICON_CLASS_MAP = { 'flash': 'app-smart-icon-search-large-flash', 'hero': 'app-smart-icon-search-large-hero', 'geek': 'app-smart-icon-search-large-geek', 'nova': 'app-smart-icon-search-large-nova', }; let SEARCH_ICON_CLASS = 'app-smart-icon-search-large-default'; Object.keys(SEARCH_ICON_CLASS_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { SEARCH_ICON_CLASS = SEARCH_ICON_CLASS_MAP[themeName]; } }) class SpzCustomSmartSearchLocation extends SPZ.BaseElement { constructor(element) { super(element); this.mobileHeaderPluginParentEle = null; this.outsideCarouselIndex = 0; this.insideCarouselIndex = 0; this.searchItemType = 'icon'; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.init(); this.listenerResize(); this.initRegisterActions(); } addIconClass(){ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>{ e.classList.add(SEARCH_ICON_CLASS) }); } moveIcon(){ if (!diffThemeName(THEME_NAME, 'lifestyle')) return; if (this.searchItemType === 'input') return; if (this.isDesktop()) return; const smart_search_dom = document.querySelector('#app-smart-product-search-container-882'); if (!smart_search_dom) return; const hasMovedIcon = !!document.querySelector('.header__wrapper .container .row.header>div>#app-smart-product-search-container-882'); if (hasMovedIcon) return; const headerDivList = document.querySelectorAll('.header__wrapper .container .row.header>div'); const iconBoxDom = headerDivList[headerDivList.length-1] iconBoxDom.appendChild(smart_search_dom, iconBoxDom.firstChild); } init() { this.addIconClass(); this.moveIcon(); if ( this.searchItemType === 'input' ) { document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'none'); const mobileSmartSearchDom = document.querySelector(`.smart-search-mobile-container .app-smart-product-search-wrap`); if ( this.isDesktop() ) { document.querySelector(`#app-smart-product-search-container-882`).style="display: block"; if (mobileSmartSearchDom) { document.querySelector(`#app-smart-product-search-container-882`).appendChild(mobileSmartSearchDom); } }else{ if( template_name=='search' ) return; if (!document.querySelector(`.smart-search-mobile-container`)) { const appSmartSearchContainer = document.createElement('div'); appSmartSearchContainer.classList.add('smart-search-mobile-container'); appSmartSearchContainer.classList.add('smart-search-mobile-container-'+THEME_NAME.toLocaleLowerCase()); document.querySelector(HEADER_DOM).appendChild(appSmartSearchContainer); } if (!mobileSmartSearchDom) { document.querySelector(`.smart-search-mobile-container`).appendChild( document.querySelector(`.app-smart-product-search-wrap`) ) } } }else{ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'flex'); } // PC-end not load if (this.isDesktop()) { return; } if (!window.__isLoadAppSmartSearch__) { this.initSmartSearch(); console.log('__isLoadAppSmartSearch__'); } // B-end must reload if (window.self === window.top && !window.__isLoadAppSmartSearch__) { window.__isLoadAppSmartSearch__ = true; } } initSmartSearch() { if (this.hasMobileUpperRightPlugin()) { this.showMobileSmartSearch(); } else { this.addMobileSmartSearch(); } } initRegisterActions(){ this.registOnSearchInputChange(); this.registOnSearchFormSubmit(); this.registOnOutsideCarouselIndexChange(); this.registOnInsideCarouselIndexChange(); this.registGetSearchItemType(); this.registGenerateHotKeywordList(); this.registerAction('onTapHotWord',(invocation)=>{ this.onTapHotWord(invocation.args.type); }); } registOnSearchInputChange(){ this.registerAction('onSearchInputChange',(invocation)=>{ const keyword = invocation.args.keyword; if (keyword === null || !keyword.length) { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: block'; }); } else { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: none'; }); } }) } registOnSearchFormSubmit(){ this.registerAction('onSearchFormSubmit',(invocation)=>{ const event = invocation.args.event; const keywordArray = event.q || []; const keyword = keywordArray[0]; if (keyword!==null && keyword.length) { this.handleSearchSubmit_(keywordArray,1); } else { this.onTapHotWord('inside') } }) } handleSearchSubmit_(value, retryNum){ SPZ.whenApiDefined(document.getElementById('app-smart-search-882')) .then((ljsSearch) => { try{ ljsSearch.handleSearchSubmit_({ value: value }) }catch(e){ console.log('catch error',retryNum) if( 3 > retryNum ){ this.handleSearchSubmit_(value, retryNum + 1); return; } const searchStr = value[0] || ''; const searchResult = ljsSearch.setThinkSearchData_(searchStr); ljsSearch.afterSearching({ query: searchResult.query, url: `${SEARCH_URL}?q=${searchStr}`, queryType: searchResult.queryType, }) } }) } registOnOutsideCarouselIndexChange(){ this.registerAction('onOutsideCarouselIndexChange',(invocation)=>{ this.outsideCarouselIndex = invocation.args.index || 0; }) } registOnInsideCarouselIndexChange(){ this.registerAction('onInsideCarouselIndexChange',(invocation)=>{ this.insideCarouselIndex = invocation.args.index || 0; }) } registGetSearchItemType(searchItemType){ this.registerAction('getSearchItemType',(invocation)=>{ SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-882')) .then((appSmartSearchOutsideItem) => { const search_item_type = appSmartSearchOutsideItem.getData()?.search_item_type; this.searchItemType = search_item_type || this.searchItemType; this.init(); }) }) } registGenerateHotKeywordList(){ this.registerAction('generateHotKeywordList',(invocation)=>{ const search_keywords = invocation.args?.data?.data?.hotKeywordList || []; const isShowHotKeyword = invocation.args?.data?.data?.isShowHotKeyword || false; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-882')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const new_search_keywords = search_keywords.map((item, index) => { item.url_obj = item.url_obj || {}; const hotwordItem = hotwords.find(e=>e.word === item.word); if (hotwordItem) { item.icon = hotwordItem.icon || ''; } if (!item.urlObj || !item.urlObj.url) { item.urlObj = { ...item.url_obj, url: item.url_obj.type === 'search' ? `${SEARCH_URL}?q=${item.word}` : item.url_obj.url, }; } return item; }); document.querySelectorAll('.app-hot-keyword-render-child') .forEach((ele) => { SPZ.whenApiDefined(ele) .then((hotWordsChildDom) => { hotWordsChildDom.render({ list: new_search_keywords, isShowHotKeyword: isShowHotKeyword, }); }) }); }) }); } onTapHotWord(type){ const index = type === 'inside' ? this.insideCarouselIndex : this.outsideCarouselIndex; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-882')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const currentHotwordItem = hotwords[index] || null; if (currentHotwordItem && currentHotwordItem.url_obj) { currentHotwordItem.url_obj.url = currentHotwordItem.url_obj.type === 'search' ? `${SEARCH_URL}?q=${currentHotwordItem.word}` : currentHotwordItem.url_obj.url; } SPZ.whenApiDefined(document.getElementById('app-smart-search-882')) .then((ljsSearch) => { if (currentHotwordItem) { ljsSearch.handleHotKeyword_({ word: currentHotwordItem.word, query_type: currentHotwordItem.type, url: currentHotwordItem.url_obj?.url, }); } else { this.handleSearchSubmit_([''],1); } }) }) } getOutsideCarouselConfig(){ return SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-882')) .then((appSmartSearchOutsideItem) => { return { ...appSmartSearchOutsideItem.getData(), outsideCarouselIndex: this.outsideCarouselIndex, } }) } listenerResize() { window.removeEventListener('resize', window.smartSearchResizeCallback); window.smartSearchResizeCallback = SPZCore.Types.debounce( this.win, () => { this.init(); }, DELAY ); window.addEventListener('resize', window.smartSearchResizeCallback); } isDesktop() { const mediaQueryList = window.matchMedia(`(min-width: ${BREAKPOINT}px)`); return mediaQueryList.matches; } hasMobileUpperRightPlugin() { return !['geek', 'flash', 'boost'].includes(THEME_NAME.toLocaleLowerCase()); } showMobileSmartSearch() { this.mobileHeaderPluginParentEle = this.getMobileHeaderPluginParentEle(); this.setMobileHeaderIconsPluginStyle(this.mobileHeaderPluginParentEle); } getMobileHeaderPluginParentEle() { const MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP = { nova: '.header__mobile #header__plugin-container', hero: '.header__icons .tw-flex.tw-justify-end.tw-items-center.tw-space-x-7', onePage: '.header__mobile #header__plugin-container', wind: '#header-icons .flex.justify-end.items-center', eva: '#header__icons .plugin_content' }; const headerPluginParentSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP) ); return document.querySelector(headerPluginParentSelector); } setMobileHeaderIconsPluginStyle(pluginParentEle) { if (!pluginParentEle) { return; } const containHidden = pluginParentEle.classList.contains('md:hidden'); const containTwHidden = pluginParentEle.classList.contains('md:tw-hidden'); if (containHidden || containTwHidden) { Array.from(pluginParentEle.children).forEach((pluginElement) => { if (!this.hasSmartSearchPlugin(pluginElement)) { pluginElement.style.display = 'none'; } }); pluginParentEle.classList.remove('md:hidden', 'md:tw-hidden'); } else { const smartSearchPluginElement = Array.from(pluginParentEle.children).find( (pluginElement) => { return this.hasSmartSearchPlugin(pluginElement); } ); smartSearchPluginElement.style.display = 'block'; } } hasSmartSearchPlugin(pluginElement) { return ( pluginElement.classList.contains(`${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`) || pluginElement.querySelectorAll(`.${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`).length > 0 ); } addMobileSmartSearch() { this.mobileHeaderIconsEle = this.getMobileHeaderIconsEle(); this.smartSearchWrapEle = this.getSmartSearchWrapEle(); this.appendSmartSearchToHeader(); } getMobileHeaderIconsEle() { // Must be the parent element of the plugin const MOBILE_HEADER_ICONS_ELE_MAP = { geek: '#header-mobile-container .flex.items-center.justify-end.flex-shrink-0', flash: '#header-layout .header__icons', boost: '.header__mobile-bottom .tw-flex.tw-items-center.tw-justify-end.tw-flex-1' }; const headerIconsSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_ICONS_ELE_MAP) ); return document.querySelector(headerIconsSelector); } getSmartSearchWrapEle() { const smartSearchWrapEle = document.querySelector(this.getSmartSearchWrapSelector()); if (!smartSearchWrapEle) { return null; } return smartSearchWrapEle; } appendSmartSearchToHeader() { if (!this.smartSearchWrapEle) { return; } this.mobileHeaderIconsEle.insertAdjacentElement('afterbegin', this.smartSearchWrapEle); } getSmartSearchWrapSelector() { const PLUGIN_POSITION = { DRAWER: 'drawer', HEADER_TOP: 'headerTop' }; // only one this plugin of ancestor element const MOBILE_PLUGIN_POSITION_ELE_MAP = { [PLUGIN_POSITION.DRAWER]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header__drawer' }, [PLUGIN_POSITION.HEADER_TOP]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header-content .logo-wrap' } }; const MbPluginPositionInTheme = [ ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.DRAWER]), ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.HEADER_TOP]) ]; return Object.values(MbPluginPositionInTheme).reduce((pre, ancestor) => { if (pre === '') { return `${ancestor} .app-smart-product-search-container`; } if (pre.includes(ancestor)) { return pre; } return `${pre},${ancestor} .app-smart-product-search-container`; }, ''); } combineMultipleSelectors(selectorList) { return selectorList.reduce((pre, selector) => { if (pre === '') { return `${selector}`; } if (pre.includes(selector)) { return pre; } return `${pre},${selector}`; }, ''); } } SPZ.defineElement(TAG, SpzCustomSmartSearchLocation);
Log in
Create an account
function setSearchUrl(searchValue) { return Promise.resolve({ url: '/search?q=' + searchValue }); } exportFunction('setSearchUrl', setSearchUrl);
${function() { if (data === undefined || typeof data !== 'string' || data == '') return `
`; if (data === 'close') return ''; return `
View more
`; }()}
Home
/
Washed Hoodies
Washed Hoodies
Filter
more than
-
${function(){ if(data.category === 'filter.v.availability') { if(data.value == 1) { return `In stock`; } return `Out of stock`; } return `${data.label}`; }()}
Clear all
${data.title}
${item.label}
(${item.count})
Filter
${data.title}
${(data.title || '').toLowerCase().replace(/^[a-z]/, c => c.toUpperCase())}
The highest price is
${data.range_max}
$
$
${data.title}
${(data.title || '').toLowerCase().replace(/^[a-z]/, c => c.toUpperCase())}
${item.label}
(${item.count})
289 Products
${function(){ const num = data.total if(num <= 1){ return `${num} Product` } return `${num} Products` }()}
Zip-Up Hoodies
Cropped Hoodies
289 Products
${function(){ const num = data.total if(num <= 1){ return `${num} Product` } return `${num} Products` }()}
Filter
more than
-
${function(){ if(data.category === 'filter.v.availability') { if(data.value == 1) { return `In stock`; } return `Out of stock`; } return `${data.label}`; }()}
Clear all
SALE
+6
Vintage First Sunday Faith Graphic Acid Washed Oversized Hoodie
$55.00
$60.00
SALE
All We Need Is Love Print Pink Washed Hoodie
$55.00
$60.00
SALE
Vintage Spider Graphic Acid Washed Oversized Hoodie
$55.00
$60.00
SALE
Forgive Them Father Graphic Acid Washed Oversized Hoodie
$55.00
$60.00
SALE
Vintage Faith Over Fear Graphic Acid Washed Oversized Hoodie
$58.00
$60.00
SALE
Sopula Vintage Saint Call Me If You Need Love Graphic Acid Washed Oversized Hoodie
$55.00
$75.00
SALE
Sopula Vintage Chase Money Graphic Washed Pocket Hoodie
$58.00
$60.00
Sopula Stop The War Print Acid Washed Oversized Zip-Up Hoodie
$70.00
SALE
Vintage Jesus Print Graphic Acid Washed Oversized Hoodie
$55.00
$60.00
SALE
Sopula Vintage Warzone Peace Club Graphic Washed Zip-Up Hoodie
$55.00
$80.00
SALE
Vintage Pattern Print Acid Washed Oversized Hoodie
$55.00
$60.00
Sopula Vintage Heavyweight Motorcycle Graphic Acid Washed Oversized Zip-Up Hoodie
$70.00
SALE
Sopula Vintage Risen King Graphic Washed Zip-Up Hoodie
$65.00
$70.00
SALE
Vintage Angels Descend Graphic Acid Washed Oversized Hoodie
$55.00
$60.00
SALE
Vintage Madonna Graphic Acid Washed Oversized Hoodie
$58.00
$72.00
SALE
+4
Sopula Essential Washed Cotton Zip-Up Hoodie
$60.00
$70.00
SALE
+6
Sopula Vintage Essential Washed Pullover Hoodies
$58.00
$60.00
SALE
+4
Vintage The Illest Villain Mf Doom Graphic Washed Hoodie
$48.00
$60.00
Sopula Vintage Jesus Words Print Acid Washed Oversized Zip-Up Hoodie
$70.00
SALE
Sopula Vintage Big Face Graphic Print Washed Hoodie
$58.00
$60.00
Sopula Vintage Holy Spirit Graphic Washed Zip-Up Hoodie
$70.00
Sopula Vintage Pattern Print Washed Cotton Zip-Up Hoodie
$70.00
Sopula All We Need Is God Graphic Acid Washed Oversized Hoodie
$60.00
SALE
Vintage Jesus Thinker Graphic Acid Washed Oversized Hoodie
$58.00
$60.00
Sopula Vintage Madness Graphic Acid Washed Oversized Hoodie
$60.00
Sopula Vintage Keepin Bankfull Graphic Acid Washed Oversized Zip-up Hoodie
$70.00
+4
Vintage Flame Abstract Skull Graphic Acid Wash Oversized Hoodie
$60.00
Vintage Hip-Hop One Of One Graphic Acid Washed Oversized Hoodie
$60.00
+5
Vintage I Am Allergic To People Graphics Print Washed Hoodie
$65.00
Sopula Relaxed Vintage Spider Graphic Acid Washed Oversized Zip-Up Hoodie
$70.00
SALE
Sopula Relaxed Vintage Graphic Acid Washed Oversized Zip-Up Hoodie
$65.00
$70.00
SALE
Sopula In Draco We Trust Graphic Washed Zip-Up Hoodie
$70.00
$75.00
SALE
Vintage Richesse Print Graphic Acid Washed Oversized Hoodie
$58.00
$60.00
SALE
Relaxed Vintage Cross Butterfly Mix Print Graphic Casual Street Washed Hoodie
$58.00
$60.00
Retro Silence of Damned Skull Oversized Graphic Acid Wash Hoodie
$60.00
SALE
+5
Men's Get Rich Money or Die Tryin Grpahic Washed Hoodie
$60.00
$68.00
No products found
Use fewer filters or
Clear all
Recently viewed
${function(){ const settings_product_title = "title"; const product_grid_image_size = "100%"; const settings_product_image_hover_on = true; let settings_product_save_label = true; const product_sold_out_label = false; const settings_product_swatches_name = ["color"]; const settings_collection_color_swatches = true; const variantShowLimit = 3; const private_id = 'product-tmpl-' + Math.random().toFixed(6).slice(-6) const product_variants = data.variants || []; const product_id = data.id; const images = data.images || []; const image = data.image || {}; const imageWidth = image.width; let imageHeight = image.height; if (product_grid_image_size !== 'natural') { imageHeight = (imageWidth * parseFloat(product_grid_image_size)) / 100; } const price = Number(data.price_min); let compareAtPrice = Number(data.compare_at_price); let offRatio = data.off_ratio; const type = data.type; const isMock = data.isMock; let product_image_hover_on = false; for (let i = 0; i < product_variants.length; i++) { const item = product_variants[i]; const vcap = Number(item.compare_at_price); if (item.price == price && vcap > compareAtPrice) { compareAtPrice = vcap; offRatio = item.off_ratio; } } let second_image = null; if (settings_product_image_hover_on) { for (let i = 1; i < images.length; i++) { const img = images[i]; if (img.src && img.src.indexOf('video=') === -1) { second_image = img; product_image_hover_on = true; break; } } } let sold_label_on = false; let sale_label_on = false; if (settings_product_save_label == null) { settings_product_save_label = true; } if (!data.available && product_sold_out_label) { sold_label_on = true; } if (settings_product_save_label && compareAtPrice > price && data.available) { sale_label_on = true; } const diffPrice = compareAtPrice - price; const variantValues = []; const showVariants = []; if (data.need_variant_image && settings_collection_color_swatches && settings_product_swatches_name.length > 0) { for (let i = 0; i < (data.options || []).length; i++) { const option = data.originData.options[i]; const optionName = option.name && option.name.toLowerCase(); if (settings_product_swatches_name.includes(optionName)) { for (let j = 0; j < product_variants.length; j++) { const variant = product_variants[j]; const value = variant.options[i].value; if (!variantValues.includes(value)) { variantValues.push(value); showVariants.push(variant); } } break; } } } return `
${function(){ if(showVariants.length == 0){ return `
` } return `
${ showVariants.map(item=>{ return `
`; }).join('') }
` }() }
SOLD OUT
SALE
${ showVariants.slice(0,variantShowLimit).map((item,index)=>{ return `
`; }).join('') }
+${showVariants.length - variantShowLimit}
${(settings_product_title === 'sub_title' && data.brief) ? data.brief : data.title}
${data.available ? `
` : ''}
`; }()}
Your cart
${data.line_items.map(item => { return `
${item.product_title}
${item.options.map(o => `
${o.name}:
${o.value}
`).join('')} ${(item.parsedProperties || []).map((propertie)=>{ if (propertie.isImage){ return `
${propertie.name}:
View image
` }else{ return `
${propertie.name}:
${propertie.value}
` } }).join('')}
Free gift
*${item.quantity}
${ (item.discount_applications || []).map(discount_item => { const discount_item_amount = discount_item.discount_amount || discount_item.amount || ''; return `
${discount_item.title}
(-
)
` }).join('') }
`; }).join('')}
Goes great with
cart
cart
Your cart is currently empty.
Continue shopping
${function() { const freeAmount = 79; const totalPrice = data?.total_price || data?.cart?.total_price || 0; const amountDiff = freeAmount - totalPrice; const percentDiff = (amountDiff > 0 ? (totalPrice / freeAmount * 100).toFixed(2) : 100) + '%'; const spendTip = "Buy {amount} more to enjoy Free Shipping"; let tipText = "Congrats! Your order is free delivery\ud83c\udf89"; if (amountDiff > 0) { tipText = spendTip.replace('{amount}', `
`); } return `
${tipText}
`; }()}
Add order note
Add order note
Total:
${data.total_discount > 0 ? ( `
Save
${data.discount_applications.length > 0 && data.discount_applications.map(item => { return `
${item.title}:
` }).join('')}
` ) : ''}
CHECKOUT
Taxes and shipping calculated at checkout
Add order note
Add order note
${function() { const freeAmount = 79; const totalPrice = data?.total_price || data?.cart?.total_price || 0; const amountDiff = freeAmount - totalPrice; const percentDiff = (amountDiff > 0 ? (totalPrice / freeAmount * 100).toFixed(2) : 100) + '%'; const spendTip = "Buy {amount} more to enjoy Free Shipping"; let tipText = "Congrats! Your order is free delivery\ud83c\udf89"; if (amountDiff > 0) { tipText = spendTip.replace('{amount}', `
`); } return `
${tipText}
`; }()}
Total:
${data.total_discount > 0 ? ( `
Save
${data.discount_applications.length > 0 && data.discount_applications.map(item => { return `
${item.title}:
` }).join('')}
` ) : ''}
CHECKOUT
Taxes and shipping calculated at checkout
${function(){ const productData = data.product; const selectedVariant = productData.variants.find(v => v.available) || productData.variants[0]; const product_options = productData.options.filter(Boolean) || []; const handleName = (name) => name.replace(/\/|\\|\s|\'|\"|`|\<|\>/g, ''); const mouseoutevent = productData.options.map((opt) => `@${handleName(opt.name)}Mouseout="qs-selected-render-${opt.id}.rerender(data=event,redo=true);"`).join(' '); const mouseoverevent = productData.options.map((opt) => `@${handleName(opt.name)}Mouseover="qs-selected-render-${opt.id}.rerender(data=event,redo=true);"`).join(' '); return `
Price
${function() { const origin = "shop" const product = (origin === 'shop' ? data.product : data) || {}; const selectedVariant = product.variants.find(v => v.available) || product.variants[0]; return !!selectedVariant ? `
` : `
-
`; }()}
${selectedVariant.available ? "ADD TO CART" : "SOLD OUT"}
Product was out of stock.
Product is unavailable.
` }()}
${function(){ let thumbSwitchName = ''; return (data.product.options || []).map((option, index) => { const optionName = option.name || ''; const optionId = option.id || ''; const position = `option${index + 1}`; let isThumbImage = false; const thumbStyle = "image"; const variantType = "button"; if (data.product.need_variant_image && thumbSwitchName === '') { const variantNames = ["Color"] || []; for (let i = 0, len = variantNames.length; i < len; i++) { const name = variantNames[i].toLowerCase(); if (name === optionName.toLowerCase()) { isThumbImage = true; thumbSwitchName = name; } } } return (variantType == 'dropdown' && !isThumbImage) ? `
${optionName.toLowerCase()}
${option.values.map(value => { const selected = data.selectedValues[optionName] == value ? 'selected' : ''; return `
${value}
` }).join('')}
` : `
${optionName}:
${data.selectedValues[optionName]}
${option.values.map((value,idx) => { const selected = data.selectedValues[optionName] == value ? 'checked' : ''; let thumbImage = null; if (isThumbImage) { const variants = data.product.variants; for (let i = 0, len = variants.length; i < len; i++) { const variant = variants[i]; if (variant[position] == value && thumbImage == null) { thumbImage = variant.image; break; } } } return `
${value}
` }).join('')}
` }).join('') }()}
${function(){ const { currentOptName, originData: { selectData, value } } = data; const optionValue = selectData ? selectData[currentOptName].value[0] : value; return `
${optionValue}
` }()}
-
-