$product = {"id":15432434843747,"title":"iPhone 16 Pro SolidX Vinne Save Me","handle":"iphone-16-pro-solidx-xq21","description":null,"published_at":"2026-10-15T16:55:27+08:00","created_at":"2026-10-15T09:21:09+08:00","vendor":"RHINOSHIELD Taiwan B2B","type":"","tags":["10%","20%","30%","40%","50%","brand-Apple","designer","designer-vinne","device-iPhone 16 Pro","reseller-vinne"],"price":125000,"price_min":125000,"price_max":125000,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":67713301086307,"title":"Ocean Blue","option1":"Ocean Blue","option2":null,"option3":null,"sku":"NST013270A-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362923315299,"product_id":15432434843747,"position":8,"created_at":"2026-10-15T09:21:25+08:00","updated_at":"2026-10-15T09:21:27+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287","variant_ids":[67713301086307]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Ocean Blue","public_title":"Ocean Blue","options":["Ocean Blue"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013270A-XQ21","featured_media":{"alt":null,"id":46477192429667,"position":8,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713309966435,"title":"Raspberry Sorbet","option1":"Raspberry Sorbet","option2":null,"option3":null,"sku":"NST013273P-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362921414755,"product_id":15432434843747,"position":6,"created_at":"2026-10-15T09:21:22+08:00","updated_at":"2026-10-15T09:21:25+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285","variant_ids":[67713309966435]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Raspberry Sorbet","public_title":"Raspberry Sorbet","options":["Raspberry Sorbet"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013273P-XQ21","featured_media":{"alt":null,"id":46477191512163,"position":6,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713310589027,"title":"Ultra Marine","option1":"Ultra Marine","option2":null,"option3":null,"sku":"NST013273O-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362918301795,"product_id":15432434843747,"position":1,"created_at":"2026-10-15T09:21:17+08:00","updated_at":"2026-10-15T09:21:20+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280","variant_ids":[67713310589027]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Ultra Marine","public_title":"Ultra Marine","options":["Ultra Marine"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013273O-XQ21","featured_media":{"alt":null,"id":46477188169827,"position":1,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713311015011,"title":"Shell Beige","option1":"Shell Beige","option2":null,"option3":null,"sku":"NST013270B-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362920792163,"product_id":15432434843747,"position":5,"created_at":"2026-10-15T09:21:21+08:00","updated_at":"2026-10-15T09:21:23+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283","variant_ids":[67713311015011]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Shell Beige","public_title":"Shell Beige","options":["Shell Beige"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013270B-XQ21","featured_media":{"alt":null,"id":46477190889571,"position":5,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713311375459,"title":"Seaweed Green","option1":"Seaweed Green","option2":null,"option3":null,"sku":"NST01327Z8-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362922922083,"product_id":15432434843747,"position":7,"created_at":"2026-10-15T09:21:24+08:00","updated_at":"2026-10-15T09:21:26+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286","variant_ids":[67713311375459]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Seaweed Green","public_title":"Seaweed Green","options":["Seaweed Green"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST01327Z8-XQ21","featured_media":{"alt":null,"id":46477192003683,"position":7,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713312096355,"title":"Black","option1":"Black","option2":null,"option3":null,"sku":"NST0132752-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362920267875,"product_id":15432434843747,"position":4,"created_at":"2026-10-15T09:21:21+08:00","updated_at":"2026-10-15T09:21:23+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283","variant_ids":[67713312096355]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Black","public_title":"Black","options":["Black"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST0132752-XQ21","featured_media":{"alt":null,"id":46477190299747,"position":4,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713313734755,"title":"White","option1":"White","option2":null,"option3":null,"sku":"NST0132753-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362918957155,"product_id":15432434843747,"position":2,"created_at":"2026-10-15T09:21:18+08:00","updated_at":"2026-10-15T09:21:21+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281","variant_ids":[67713313734755]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - White","public_title":"White","options":["White"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST0132753-XQ21","featured_media":{"alt":null,"id":46477188923491,"position":2,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327O8-XQ21.webp?v=1792027282","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287"],"featured_image":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280","options":["color"],"media":[{"alt":null,"id":46477188169827,"position":1,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280","width":550},{"alt":null,"id":46477188923491,"position":2,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281","width":550},{"alt":null,"id":46477189742691,"position":3,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327O8-XQ21.webp?v=1792027282"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327O8-XQ21.webp?v=1792027282","width":550},{"alt":null,"id":46477190299747,"position":4,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283","width":550},{"alt":null,"id":46477190889571,"position":5,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283","width":550},{"alt":null,"id":46477191512163,"position":6,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285","width":550},{"alt":null,"id":46477192003683,"position":7,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286","width":550},{"alt":null,"id":46477192429667,"position":8,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287","width":550}],"requires_selling_plan":false,"selling_plan_groups":[],"content":null}; $isMerge = null; $variants = [{"id":67713301086307,"title":"Ocean Blue","option1":"Ocean Blue","option2":null,"option3":null,"sku":"NST013270A-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362923315299,"product_id":15432434843747,"position":8,"created_at":"2026-10-15T09:21:25+08:00","updated_at":"2026-10-15T09:21:27+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287","variant_ids":[67713301086307]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Ocean Blue","public_title":"Ocean Blue","options":["Ocean Blue"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013270A-XQ21","featured_media":{"alt":null,"id":46477192429667,"position":8,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713309966435,"title":"Raspberry Sorbet","option1":"Raspberry Sorbet","option2":null,"option3":null,"sku":"NST013273P-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362921414755,"product_id":15432434843747,"position":6,"created_at":"2026-10-15T09:21:22+08:00","updated_at":"2026-10-15T09:21:25+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285","variant_ids":[67713309966435]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Raspberry Sorbet","public_title":"Raspberry Sorbet","options":["Raspberry Sorbet"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013273P-XQ21","featured_media":{"alt":null,"id":46477191512163,"position":6,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273P-XQ21.webp?v=1792027285"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713310589027,"title":"Ultra Marine","option1":"Ultra Marine","option2":null,"option3":null,"sku":"NST013273O-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362918301795,"product_id":15432434843747,"position":1,"created_at":"2026-10-15T09:21:17+08:00","updated_at":"2026-10-15T09:21:20+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280","variant_ids":[67713310589027]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Ultra Marine","public_title":"Ultra Marine","options":["Ultra Marine"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013273O-XQ21","featured_media":{"alt":null,"id":46477188169827,"position":1,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013273O-XQ21.webp?v=1792027280"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713311015011,"title":"Shell Beige","option1":"Shell Beige","option2":null,"option3":null,"sku":"NST013270B-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362920792163,"product_id":15432434843747,"position":5,"created_at":"2026-10-15T09:21:21+08:00","updated_at":"2026-10-15T09:21:23+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283","variant_ids":[67713311015011]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Shell Beige","public_title":"Shell Beige","options":["Shell Beige"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013270B-XQ21","featured_media":{"alt":null,"id":46477190889571,"position":5,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270B-XQ21.webp?v=1792027283"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713311375459,"title":"Seaweed Green","option1":"Seaweed Green","option2":null,"option3":null,"sku":"NST01327Z8-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362922922083,"product_id":15432434843747,"position":7,"created_at":"2026-10-15T09:21:24+08:00","updated_at":"2026-10-15T09:21:26+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286","variant_ids":[67713311375459]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Seaweed Green","public_title":"Seaweed Green","options":["Seaweed Green"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST01327Z8-XQ21","featured_media":{"alt":null,"id":46477192003683,"position":7,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST01327Z8-XQ21.webp?v=1792027286"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713312096355,"title":"Black","option1":"Black","option2":null,"option3":null,"sku":"NST0132752-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362920267875,"product_id":15432434843747,"position":4,"created_at":"2026-10-15T09:21:21+08:00","updated_at":"2026-10-15T09:21:23+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283","variant_ids":[67713312096355]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Black","public_title":"Black","options":["Black"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST0132752-XQ21","featured_media":{"alt":null,"id":46477190299747,"position":4,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132752-XQ21.webp?v=1792027283"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":67713313734755,"title":"White","option1":"White","option2":null,"option3":null,"sku":"NST0132753-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362918957155,"product_id":15432434843747,"position":2,"created_at":"2026-10-15T09:21:18+08:00","updated_at":"2026-10-15T09:21:21+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281","variant_ids":[67713313734755]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - White","public_title":"White","options":["White"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST0132753-XQ21","featured_media":{"alt":null,"id":46477188923491,"position":2,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST0132753-XQ21.webp?v=1792027281"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}]; $defaultVariant = {"id":67713301086307,"title":"Ocean Blue","option1":"Ocean Blue","option2":null,"option3":null,"sku":"NST013270A-XQ21","requires_shipping":true,"taxable":true,"featured_image":{"id":43362923315299,"product_id":15432434843747,"position":8,"created_at":"2026-10-15T09:21:25+08:00","updated_at":"2026-10-15T09:21:27+08:00","alt":null,"width":550,"height":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287","variant_ids":[67713301086307]},"available":true,"name":"iPhone 16 Pro SolidX Vinne Save Me - Ocean Blue","public_title":"Ocean Blue","options":["Ocean Blue"],"price":125000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"NST013270A-XQ21","featured_media":{"alt":null,"id":46477192429667,"position":8,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/NST013270A-XQ21.webp?v=1792027287"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}; $device_handle = null; $brand_handle = null; $type = ""; var sellingStatus // 只有設計款(SKU 含 '-')才需要合圖 if ($isMerge && $defaultVariant.sku.includes('-')) { $(document).ready(function() { var productImg = $product.images[0]; var bumperImg = window.getProductImageUrl($defaultVariant.sku.split('-')[0]); var layers = ($type === 'mod-nx-backplate' || $type === 'mod-backplate') ? [productImg, bumperImg] : [bumperImg, productImg]; window.mergeProductImages(layers).then(function (mergedImg) { $('.merged-img').attr('src', mergedImg); }); }); }; var sellingStatusData window.fetchSellingStatus().then(data => { try { sellingStatusData = data; } catch (error) { sellingStatusData = null console.error('Unable to parse selling status', error) } $(document).ready(function() { handleSellingStatus($defaultVariant.sku); }); }) function handleSellingStatus(currentSku) { if (!sellingStatusData) { console.error('No selling status available!') return } const sellingStatusElement = document.getElementById('selling-status') const addToCartButton = document.getElementById('AddToCart-product-template') const currentProductSku = currentSku.replace(/-(.*)$/, '-') if ($variants) { const flattenedSellingStatus = [...sellingStatusData.pending, ...sellingStatusData.preorder] const matchSellingStatusProduct = flattenedSellingStatus.filter(product => currentProductSku === product.sku) if (matchSellingStatusProduct.length > 0) { const isProductPending = matchSellingStatusProduct[0].status === 'pending' const matchDate = matchSellingStatusProduct[0].date sellingStatus = isProductPending ? "缺貨中" : "預購完成出貨日:" + matchDate sellingStatusElement.textContent = sellingStatus if (sellingStatus.includes("缺貨中")){ addToCartButton.disabled ='true'; addToCartButton.textContent = "缺貨中無法加入購物車" } else { addToCartButton.textContent = "加到購物車" } } else { sellingStatusElement.textContent = '' addToCartButton.textContent = "加到購物車" }; }; }; document.addEventListener('DOMContentLoaded', function () { var currentVariantSelect = document.getElementById('SingleOptionSelector-0') currentVariantSelect.addEventListener('change', function() { var currentSku = $('#current_sku').text() var skuElement = document.getElementById('current-sku') skuElement.textContent = currentSku handleSellingStatus(currentSku) }); });
// Override default values of shop.strings for each template. // Alternate product templates can change values of // add to cart button, sold out, and unavailable states here. theme.productStrings = { addToCart: "加到購物車", soldOut: "售完", unavailable: "停產" }