Özellikle kadınlar için tasarlanan bu Doğa Yürüyüşü ayakkabısı, her türlü arazide güvenle yürüyebilmenizi sağlayan dengeleyici ve rahat bir köpük orta taban ile Merrell’e özel Vibram TC5+ dış tabana sahiptir. Siren Edge, yürüyüş parkurunda daha fazla dayanıklılık sunan hafif, nefes alabilen ve sağlam file ile TPU üst kısımdan oluşur. Merrell Air Cushion topuk kısmı, darbeleri emerek parkurda dengenizi artırır. ÖZELLİKLER
• Nefes alabilen file ve TPU üst kısım
• Geleneksel bağcıklı kapatma
• Körük dil, kir ve tozu dışarıda tutar
• Nefes alabilen file astar
• Esnek destek için Kinetic Fit™ BASE çıkarılabilir konturlu tabanlık
• Topuktaki Merrell Air Cushion, darbeleri emer ve denge sağlar
• Kalıplanmış naylon kemer şaftı
• Daha yumuşak köpük bölgelerine sahip hafif EVA köpük orta taban, pronasyonu azaltabilir
• Vibram® TC5+ dış taban, Merrell için özel olarak formüle edilmiş olup, açık havada yapılan çoklu spor aktiviteleri için olağanüstü tutuş sağlar
• Düşüş: 11 mm
• Vegan Dostu
• Yarım çift ağırlığı: 0 lb-9,87 oz, 280 g
Görünümü Tamamla
/* projects/merrell-complete-the-look/template:scripts/script.js */”use strict”;(() => { // projects/merrell-complete-the-look/scripts/cross-sell-map.js var crossSellMap = { “60744M”: [“60746M”, “60748M”, “60760M”, “17703M”], “60746M”: [“60744M”, “60748M”, “60760M”, “17703M”], “60748M”: [“60746M”, “60744M”, “60760M”, “17703M”], “60753M”: [“60758M”, “60748M”, “60812U”], “60745W”: [“60747W”, “60749W”, “60930W”, “16256W”], “60747W”: [“60745W”, “60749W”, “60930W”, “16256W”], “60749W”: [“60745W”, “60747W”, “60930W”, “16256W”], “60628W”: [“60755W”, “60700W”, “60738U”], “17703M”: [“61113M”, “61081M”, “61085U”], “44491W”: [“61086W”, “61087W”, “61085U”], “60644M”: [“61092M”, “61081M”, “61084U”], “16256W”: [“61107W”, “61111W”, “60735U”] }; // projects/merrell-complete-the-look/scripts/pdp-utils.js function getCurrentProductId() { return window.dataLayer[2].product_id; } // projects/Merrell-complete-the-look/scripts/api.js var API_URL = “https://fedapps.wolverineworldwide.com”; var PRODUCTS_ENDPOINT = “/api/products”; function getSiteParams() { const siteId = window.CQuotient?.siteId || “merrell_us”; const locale = window.CQuotient?.locale?.replace(“_”, “-“) || “en-US”; return { siteId, locale }; } async function fetchProducts(styleCodes) { const { siteId, locale } = getSiteParams(); const url = new URL(`${API_URL}${PRODUCTS_ENDPOINT}`); url.searchParams.append(“ids”, styleCodes.join(“,”)); url.searchParams.append(“siteId”, siteId); url.searchParams.append(“locale”, locale); const response = await fetch(url); if (!response.ok) { throw new Error(`Ürünleri getirelemedi: ${response.status}`); } return response.json(); } // projects/merrell-complete-the-look/scripts/script.js function renderSlide(product) { return `
${product.name}
`; } function initCarousel() { const root = document.querySelector(“#complete-the-look”); const viewportNode = root.querySelector(“.ctl-carousel-viewport”); const prevButton = root.querySelector(“.ctl-btn-prev”); const nextButton = root.querySelector(“.ctl-btn-next”); const scrollbarNode = root.querySelector(“.ctl-progress”); const carousel = EmblaCarousel(viewportNode, { align: “start”, skipSnaps: true }); const hideClass = “carousel-hide”; const canNotScroll = () => !carousel.canScrollNext() && !carousel.canScrollPrev(); function handleInit(isReInit = false) { function updateButtons() { if (!prevButton || !nextButton) return; function setButtonStates() { prevButton.toggleAttribute(“disabled”, !carousel.canScrollPrev()); nextButton.toggleAttribute(“disabled”, !carousel.canScrollNext()); } if (canNotScroll()) { prevButton.classList.add(hideClass); nextButton.classList.add(hideClass); } else { prevButton.classList.remove(hideClass); nextButton.classList.remove(hideClass); } if (!isReInit) { prevButton.addEventListener(“click”, () => carousel.scrollPrev()); nextButton.addEventListener(“click”, () => carousel.scrollNext()); carousel.on(“select”, setButtonStates); } setButtonStates(); } function updateScrollbar() { if (!scrollbarNode) return; function setScrollProgress() { const rootNode = carousel.rootNode(); const containerNode = carousel.containerNode(); const rootWidth = rootNode.clientWidth; const containerWidth = containerNode.scrollWidth; const visibleRatio = containerWidth ? Math.min(1, rootWidth / containerWidth) : 1; const progress = Math.max(0, Math.min(1, carousel.scrollProgress())); const viewportCoverageRatio = progress * (1 – visibleRatio) + visibleRatio; const progressPercent = Math.ceil(viewportCoverageRatio * 1e3) / 10; scrollbarNode.style.setProperty( “–scroll-progress”, `${progressPercent}%` ); } if (canNotScroll()) { scrollbarNode.classList.add(hideClass); } else { scrollbarNode.classList.remove(hideClass); } carousel.on(“scroll”, setScrollProgress); setScrollProgress(); } updateButtons(); updateScrollbar(); } function reInit() { carousel.reInit({ watchDrag: !canNotScroll() }); } window.addEventListener(“resize”, () => { clearTimeout(window.__ctlResizeTimer); window.__ctlResizeTimer = setTimeout(reInit, 150); }); carousel.on(“init”, () => { handleInit(); reInit(); }); carousel.on(“reInit”, () => handleInit(true)); } function initToggle() { const root = document.querySelector(“#complete-the-look”); const toggle = root.querySelector(“.ctl-toggle”); const carousel = root.querySelector(“.ctl-carousel”); const controls = root.querySelector(“.ctl-controls”); toggle.addEventListener(“click”, () => { const collapsed = toggle.classList.toggle(“is-collapsed”); carousel.style.display = collapsed ? “none” : “”; controls.style.display = collapsed ? “none” : “”; }); } fedlib.pollForDataLayer(async function() { const productId = getCurrentProductId(); console.log(“[CTL] productId:”, productId); if (!productId) return; const recommendations = crossSellMap[productId]; console.log(“[CTL] recommendations:”, recommendations); if (!recommendations) return; const productsData = await fetchProducts(recommendations); console.log(“[CTL] productsData:”, productsData); const products = productsData.data || []; if (!products.length) return; let enrichedProducts; try { enrichedProducts = products.map((product) => { const slugUrl = new URL(product.slugUrl, location.origin); return { name: product.name, price: product.price, image: product.imageGroups[0].images[0].link, url: slugUrl.href }; }); } catch (e) { console.error(“[CTL] enrichedProducts hatası:”, e, products); return; } const root = document.querySelector(“#complete-the-look”); console.log(“[CTL] root:”, root); if (!root) return; try { const container = root.querySelector(“.ctl-carousel-container”); container.innerHTML = enrichedProducts.map(renderSlide).join(“”); const productDescCol = root.closest(“.bfx-product-desc”); if (productDescCol) { const row = productDescCol.closest(“.row”); const insertAfter = row || productDescCol; insertAfter.after(root); } initCarousel(); initToggle(); console.log(“[CTL] tamamlandı u2705”); } catch (e) { console.error(“[CTL] görüntüleme hatası:”, e); } });})();/* projects/merrell-complete-the-look/template:styles/style.scss */#complete-the-look { –ctl-padding-x: 0; –ctl-card-min-width: 265px; –ctl-card-max-width: 640px; –ctl-gap: 1rem; –ctl-progress-max-width: 265px; display: none;}@media (min-width: 768px) { #complete-the-look { –ctl-progress-max-width: 384px; }}@media (min-width: 1024px) { #complete-the-look { –ctl-card-min-width: 249px; –ctl-progress-max-width: 800px; }}.ctl { font-size: 1rem; color: var(–color-base); background: #fff; text-align: left;}.ctl * { -webkit-font-smoothing: antialiased; box-sizing: border-box;}.ctl a { color: inherit; text-decoration: none;}.ctl img { display: block; width: 100%; height: auto;}.ctl-wrapper { padding: 0 var(–ctl-padding-x); margin: 0 auto; max-width: max-content; border-top: 1px solid black;}.ctl-header { display: flex; padding: 1.5rem 0; align-items: center; justify-content: space-between;}.ctl-title { font-size: 1.5rem; margin: 0; font-weight: 500; satır yüksekliği: 1.75rem; harf aralığı: -0.48px;}.ctl-toggle { görüntüleme: esnek; yükseklik: otomatik; arka plan: yok; kenarlık: yok; imleç: işaretçi; öğeleri ortala: merkez; içeriği ortala: merkez;}.ctl-toggle svg { genişlik: 15px; transition: transform 0.3s ease; height: 15px;}.ctl-toggle.is-collapsed svg { transform: rotate(180deg);}.ctl-carousel { margin: 0 calc(var(–ctl-padding-x) * -1);}.ctl-carousel-viewport { overflow: hidden; padding-inline: var(–ctl-padding-x);}.ctl-carousel-container { display: flex; gap: var(–ctl-gap); touch-action: pan-y pinch-zoom;}.ctl-slide { max-width: var(–ctl-card-max-width); flex: 0 0 auto; min-width: var(–ctl-card-min-width); flex: 1 0 0;}.ctl-slide-link { display: flex; flex-direction: column; background: #f2f2f2; border-radius: 1rem; overflow: hidden; height: 100%;}.ctl-slide-img-wrapper { display: flex; aspect-ratio: 1/1; overflow: hidden; align-items: center; justify-content: center;}.ctl-slide-img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply;}.ctl-slide-info { display: flex; padding: 1rem; align-items: center; gap: 0.5rem;}.ctl-slide-name { font-size: 1rem; margin: 0; flex: 1; font-weight: 500; satır yüksekliği: 1.5rem;}.ctl-slide-arrow { görüntüleme: esnek; genişlik: 26px; esnek daralma: 0; öğeleri ortala; taşma: gizli;}.ctl-slide-arrow svg { width: 24px; height: auto; flex-shrink: 0;}.ctl-controls { display: flex; padding: 1rem 0; align-items: flex-start; justify-content: space-between; gap: 10.25rem;}@media (min-width: 1024px) { .ctl-controls { padding: 1.5rem 0; }}.ctl-btns { display: none; gap: 1rem;}@media (min-width: 1024px) { .ctl-btns { display: flex; }}.ctl-btn { display: flex; justify-content: center; align-items: center; width: 3rem; height: 3rem; background: #f2f2f2; kenarlık: yok; kenar yuvarlaklığı: 9999px; imleç: işaretçi; dolgu: 0; geçiş: arka plan 0.15s ease, opaklık 0.15s ease;}.ctl-btn::after { içerik: “”; görüntüleme: blok; genişlik: 1rem; yükseklik: 1rem; arka plan konumu: ortala; arka plan tekrarı: no-repeat; arka plan boyutu: içer; geçiş: dönüştürme 0.3s ease;}.ctl-btn[devre dışı] { imleç: izin verilmez; imleç olayları: yok; opacity: 0.5;}.ctl-btn.carousel-hide { visibility: hidden;}.ctl-btn-prev::after { background-image: url(“data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNSIgdmlld0JveD0iMCAwIDE4IDE1IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMTcgNi4zNjM5NUMxNy41NTIzIDYuMzYzOTUgMTggNi44MTE2NyAxOCA3LjM2Mzk1QzE4IDcuOTE2MjQgMTcuNTUyMyA4LjM2Mzk1IDE3IDguMzYzOTVWNy4zNjM5NVY2LjM2Mzk1Wk0wLjI5Mjg5MiA4LjA3MTA2Qy0wLjA5NzYzMTUgNy42ODA1NCAtMC4wOTc2MzE1IDcuMDQ3MzcgMC4yOTI4OTIgNi42NTY4NUw2LjY1Njg1IDAuMjkyODg1QzcuMDQ3MzggLTAuMDk3NjM5NiA3LjY4MDU0IC0wLjA5NzYzOTYgOC4wNzEwNyAwLjI5Mjg4NUM4LjQ2MTU5IDAuNjgzNDA5IDguNDYxNTkgMS4zMTY1NyA4LjA3MTA3IDEuNzA3MUwyLjQxNDIxIDcuMzYzOTVMOC4wNzEwNyAxMy4wMjA4QzguNDYxNTkgMTMuNDExMyA4LjQ2MTU5IDE0LjA0NDUgOC4wNzEwNyAxNC40MzVDNy42ODA1NCAxNC44MjU1IDcuMDQ3MzggMTQuODI1NSA2LjY1Njg1IDE0LjQzNUwwLjI5Mjg5MiA4LjA3MTA2Wk0xNyA3LjM2Mzk1VjguMzYzOTVIMVY3LjM2Mzk1VjYuMzYzOTVIMTdWNy4zNjM5NVoiIGZpbGw9IiMxOTE5MTkiLz4KPC9zdmc+”);}@media (hover: hover) { .ctl-btn-prev:hover::after { transform: translateX(-30%); }}.ctl-btn-next::after { background-image: url(“data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNSIgdmlld0JveD0iMCAwIDE4IDE1IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMSA2LjM2Mzk1QzAuNDQ3NzE1IDYuMzYzOTUgMCA2LjgxMTY3IDAgNy4zNjM5NUMwIDcuOTE2MjQgMC40NDc3MTUgOC4zNjM5NSAxIDguMzYzOTVWNy4zNjM5NVY2LjM2Mzk1Wk0xNy43MDcxIDguMDcxMDZDMTguMDk3NiA3LjY4MDU0IDE4LjA5NzYgNy4wNDczNyAxNy43MDcxIDYuNjU2ODVMMTEuMzQzMSAwLjI5Mjg4NUMxMC45NTI2IC0wLjA5NzYzOTYgMTAuMzE5NSAtMC4wOTc2Mzk2IDkuOTI4OTMgMC4yOTI4ODVDOS41Mzg0MSAwLjY4MzQwOSA5LjUzODQxIDEuMzE2NTcgOS45Mjg5MyAxLjcwNzFMMTUuNTg1OCA3LjM2Mzk1TDkuOTI4OTMgMTMuMDIwOEM5LjUzODQxIDEzLjQxMTMgOS41Mzg0MSAxNC4wNDQ1IDkuOTI4OTMgMTQuNDM1QzEwLjMxOTUgMTQuODI1NSAxMC45NTI2IDE0LjgyNTUgMTEuMzQzMSAxNC40MzVMMTcuNzA3MSA4LjA3MTA2Wk0xIDcuMzYzOTVWOC4zNjM5NUgxN1Y3LjM2Mzk1VjYuMzYzOTVIMVY3LjM2Mzk1WiIgZmlsbD0iIzE5MTkxOSIvPgo8L3N2Zz4=”);}@media (hover: hover) { .ctl-btn-next:hover::after { transform: translateX(30%); }}@media (hover: hover) { .ctl-btn:hover { background: #ff803b; }}.ctl-progress-wrapper { display: flex; flex: 1; flex-direction: column; align-items: center; padding-top: 1rem;}@media (min-width: 1024px) { .ctl-progress-wrapper { padding-top: 1.5rem; }}.ctl-progress { position: relative; width: 100%; max-width: var(–ctl-progress-max-width); height: 4px; background: #e3e3e3; border-radius: 8px; overflow: hidden;}.ctl-progress::after { position: absolute; top: 0; left: 0; width: var(–scroll-progress, 0%); content: “”; height: 100%; background: var(–color-base); border-radius: 8px; transition: width 0.1s ease;}.ctl-progress.carousel-hide { visibility: hidden;}




















Değerlendirmeler
Henüz değerlendirme yapılmadı.