Edición de tema benéfico

$71.00
const TAG = "spz-custom-product-automatic"; class SpzCustomProductAutomatic extends SPZ.BaseElement { constructor(element) { super(element); this.variant_id = '8672a913-c29b-4c2f-bc01-b27ecbbd5df4'; this.isRTL = SPZ.win.document.dir === 'rtl'; this.isAddingToCart_ = false; // 加购中状态 } static deferredMount() { return false; } buildCallback() { this.action_ = SPZServices.actionServiceForDoc(this.element); this.templates_ = SPZServices.templatesForDoc(this.element); this.xhr_ = SPZServices.xhrFor(this.win); this.setupAction_(); this.viewport_ = this.getViewport(); } mountCallback() { this.init(); // 监听事件 this.bindEvent_(); } async init() { this.handleFitTheme(); const data = await this.getDiscountList(); this.renderApiData_(data); } async getDiscountList() { const productId = '3672621e-08f0-48e5-a183-37592dd516fd'; const variantId = this.variant_id; const productType = 'default'; const reqBody = { product_id: productId, variant_id: variantId, discount_method: "DM_AUTOMATIC", customer: { customer_id: window.C_SETTINGS.customer.customer_id, email: window.C_SETTINGS.customer.customer_email }, product_type: productType } const url = `/api/storefront/promotion/display_setting/text/list`; const data = await this.xhr_.fetchJson(url, { method: "post", body: reqBody }).then(res => { return res; }).catch(err => { this.setContainerDisabled(false); }) return data; } async renderDiscountList() { this.setContainerDisabled(true); const data = await this.getDiscountList(); this.setContainerDisabled(false); // 重新渲染 抖动问题处理 this.renderApiData_(data); } clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } async renderApiData_(data) { const parentDiv = document.querySelector('.automatic_discount_container'); const newTplDom = await this.getRenderTemplate(data); if (parentDiv) { parentDiv.innerHTML = ''; parentDiv.appendChild(newTplDom); } else { console.log('automatic_discount_container is null'); } } doRender_(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { this.clearDom(); this.element.appendChild(el); }); } async getRenderTemplate(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, { ...renderData, isRTL: this.isRTL }) .then((el) => { this.clearDom(); return el; }); } setContainerDisabled(isDisable) { const automaticDiscountEl = document.querySelector('.automatic_discount_container_outer'); if(isDisable) { automaticDiscountEl.setAttribute('disabled', ''); } else { automaticDiscountEl.removeAttribute('disabled'); } } // 绑定事件 bindEvent_() { window.addEventListener('click', (e) => { let containerNodes = document.querySelectorAll(".automatic-container .panel"); let bool; Array.from(containerNodes).forEach((node) => { if(node.contains(e.target)){ bool = true; } }) // 是否popover面板点击范围 if (bool) { return; } if(e.target.classList.contains('drowdown-icon') || e.target.parentNode.classList.contains('drowdown-icon')){ return; } const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { node.classList.remove('open-dropdown'); }) // 兼容主题 this.toggleProductSticky(true); }) // 监听变体变化 document.addEventListener('dj.variantChange', async(event) => { // 重新渲染 const variant = event.detail.selected; if (variant.product_id == '3672621e-08f0-48e5-a183-37592dd516fd' && variant.id != this.variant_id) { this.variant_id = variant.id; this.renderDiscountList(); } }); } // 兼容主题 handleFitTheme() { // top 属性影响抖动 let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ productInfoEl.classList.add('force-top-auto'); } } // 兼容 wind/flash /hero 主题 (sticky属性影响 popover 层级展示, 会被其他元素覆盖) toggleProductSticky(isSticky) { let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ if(isSticky) { // 还原该主题原有的sticky属性值 productInfoEl.classList.remove('force-position-static'); return; } productInfoEl.classList.toggle('force-position-static'); } } setupAction_() { this.registerAction('handleDropdown', (invocation) => { const discount_id = invocation.args.discount_id; const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { if(node.getAttribute('id') != `automatic-${discount_id}`) { node.classList.remove('open-dropdown'); } }) const $discount_item = document.querySelector(`#automatic-${discount_id}`); $discount_item && $discount_item.classList.toggle('open-dropdown'); // 兼容主题 this.toggleProductSticky(); }); // 加购事件 this.registerAction('handleAddToCart', (invocation) => { // 阻止事件冒泡 const event = invocation.event; if (event) { event.stopPropagation(); event.preventDefault(); } // 如果正在加购中,直接返回 if (this.isAddingToCart_) { return; } const quantity = invocation.args.quantity || 1; this.addToCart(quantity); }); } // 加购方法 async addToCart(quantity) { // 设置加购中状态 this.isAddingToCart_ = true; const productId = '3672621e-08f0-48e5-a183-37592dd516fd'; const variantId = this.variant_id; const url = '/api/cart'; const reqBody = { product_id: productId, variant_id: variantId, quantity: quantity }; try { const data = await this.xhr_.fetchJson(url, { method: 'POST', body: reqBody }); // 触发加购成功提示 this.triggerAddToCartToast_(); return data; } catch (error) { error.then(err=>{ this.showToast_(err?.message || err?.errors?.[0] || 'Unknown error'); }) } finally { // 无论成功失败,都重置加购状态 this.isAddingToCart_ = false; } } showToast_(message) { const toastEl = document.querySelector("#apps-match-drawer-add_to_cart_toast"); if (toastEl) { SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast(message); }); } } // 触发加购成功提示 triggerAddToCartToast_() { // 如果主题有自己的加购提示,则不显示 const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy'); if (themeAddToCartToastEl) return; // 显示应用的加购成功提示 this.showToast_("Agregado exitosamente"); } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, `${ TAG }.${ name }`, data || {}); this.action_.trigger(this.element, name, event); } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } } SPZ.defineElement(TAG, SpzCustomProductAutomatic);
class SpzCustomDiscountBundle extends SPZ.BaseElement { constructor(element) { super(element); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } mountCallback() {} unmountCallback() {} setupAction_() { this.registerAction('showAddToCartToast', () => { const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy') if(themeAddToCartToastEl) return const toastEl = document.querySelector('#apps-match-drawer-add_to_cart_toast') SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast("Agregado exitosamente"); }); }); } buildCallback() { this.setupAction_(); }; } SPZ.defineElement('spz-custom-discount-toast', SpzCustomDiscountBundle);
Color:  Negro
Talla:  XS
Cantidad

🛒 Nuestro Proceso de Compra (100% Seguro)

1. Realiza tu pedido o busca tu modelo:

Haz tu pedido en la web y te contactaremos en menos de 8 horas para confirmar la talla y el monto. ¿No encuentras lo que buscas en la web? Envíanos una foto y te daremos precio.

💬 Contactar por WhatsApp

2. Pago y Fotos Reales (QC):

Tras el pago, prepararemos tu artículo y te enviaremos fotos de calidad (QC) en 5 días hábiles. Garantizamos que lo que ves es exactamente lo que recibes.

3. Envío y Garantía de Aduana:

El tiempo de entrega es de 7 a 11 días hábiles. Si tu paquete es retenido por la aduana, lo reenviamos completamente gratis. Sin riesgos para ti.

4. ¿Tienes otras dudas?

Si tienes preguntas sobre tallas, calidad, envíos o pedidos al por mayor, escríbenos directamente a nuestro WhatsApp para asistencia inmediata.

Descripción

Guía de Tallas (XS - L)

Talla

Hombro (cm)

Pecho (cm) Longitud (cm) Manga (cm)
XS 51 112 73 25
S 53 116 75 26
M 55 120 77 27
L 57 124 79 28

Descripción del producto

Esta camiseta tiene como diseño central el logotipo benéfico WFP, con un corte oversize holgado, que combina la tendencia callejera con el sentido benéfico, siendo un artículo personal y versátil para el uso diario.
  • Material y elaboración: Está confeccionada con un tejido de algodón doble teñido y tejido original de la marca, con un peso de 260g, superficie limpia, textura clara, suave, agradable para la piel y transpirable; el ribete está teñido sin diferencia de color, y el cuello no se deforma fácilmente después de mucho uso.
  • Puntos destacados de los detalles: El pecho, las mangas y la espalda están impresos con el logotipo clásico WFP y textos benéficos, utilizando pasta de goma ecológica de alta calidad, y la tecnología de malla precisa garantiza letras claras sin bordes, fuerte sentido tridimensional y resistente al lavado; el diseño de mangas caídas modifica la figura, y el cuello redondo es clásico y versátil.
  • Funciones prácticas: El corte holgado se adapta a múltiples tipos de cuerpo, el material de algodón se puede usar en todas las estaciones, transpirable y absorbente del sudor, ideal para escenarios como el trabajo, salidas y ocio.
Consejos de cuidado: Se recomienda lavar a mano suavemente o lavar a máquina al revés, temperatura del agua no superior a 30℃, secar colgado, evitando el planchado a alta temperatura y la exposición al sol para prevenir la caída de la impresión y la deformación del tejido.

Consejos de look

  • Estilo callejero: Combina con pantalones vaqueros ajustados negros + zapatillas de deporte, collares y gorra de béisbol superpuestos, personal y llamativo, ideal para salidas diarias o deportes de skate.
  • Estilo relajado casual: Combina con pantalones vaqueros rectos claros + zapatillas blancas, desabrochando los botones del dobladillo para crear una sensación holgada, ideal para citas los fines de semana o descansar en una cafetería.
  • Superposición de capas: Superponer una camiseta de manga larga blanca interior, chaqueta de vaqueros o chaqueta de trabajo exterior, combinada con botines Martin, para crear un look de superposición retro americano.

Información de Compra

1. ¿Cómo realizo el pago?

Respuesta: Una vez que completes tu pedido en la web, nuestro equipo se pondrá en contacto contigo a través de WhatsApp o correo electrónico. Confirmaremos el monto total y las tallas para asegurar que todo sea correcto. Tras la confirmación, te enviaremos un enlace de pago seguro.

2. ¿No encuentras el producto que buscas?

¡No hay problema! Si buscas un modelo específico que no aparece en nuestra web, puedes enviarnos una foto del producto que deseas y te daremos una cotización personalizada de inmediato.

3. ¿Cuánto tarda el envío a España?

Preparación (3-5 días hábiles): Tras el pago, prepararemos tu pedido y te enviaremos fotos reales (QC) para que verifiques la calidad.

Envío (7-11 días hábiles): Una vez que apruebes las fotos, el paquete llegará a tu dirección en España en un plazo estimado de 7 a 11 días laborables.

4. ¿Cómo elijo la talla adecuada?

Si tienes dudas, envíanos tu altura, peso o medidas de pecho por WhatsApp. Te asesoraremos personalmente para seleccionar la talla perfecta y evitar cambios innecesarios.

5. ¿Es este sitio web una estafa (scam)?

En absoluto. Apostamos por el negocio a largo plazo. La satisfacción de nuestros clientes es nuestra prioridad, ya que más del 70% de nuestros compradores vuelven a elegirnos. No buscamos una venta única, sino ser tu proveedor de confianza por muchos años.

6. ¿Qué pasa si la aduana retiene mi paquete?

No tienes de qué preocuparte. Contamos con una Garantía de Entrega: si tu paquete es retenido o confiscado por la aduana, volveremos a enviar tu pedido completo sin ningún coste adicional. Nosotros asumimos todo el riesgo por ti.

Customer reviews

4 Reviews
Amigo

¡Estoy absolutamente encantado con todos los productos réplicas que compré! Cada pieza superó mis expectativas en calidad y diseño.Sin duda seguiré comprando aquí.

Jandro

¡La calidad supera las expectativas! El tejido es excelente, la sudadera de punto waffle es suave, el bordado es exquisito, los pantalones tienen una caída perfecta, estilizan las piernas y son cómodos. El corte se adapta a cualquier cuerpo, ¡los amantes de la moda no pueden perdérselo! Lo he recomendado a mis amigos, ¡muy buena valoración!

Sofi

¡Me sorprendió mucho al recibir el paquete! Cada prenda tiene una calidad excelente, el tejido y la artesanía son sólidos, el corte se ajusta perfectamente al cuerpo. Los zapatos son cómodos y no rozan, y los detalles del bolso son impecables. Superó completamente mis expectativas, ya he comprado varias veces, ¡recomendado al 100%!

Izan Navarro

¡Calidad excelente! Los portatarjetas están hechos con una artesanía exquisita, el tejido es resistente, el cordón es duradero. Combina belleza y practicidad, muy conveniente para el uso diario. Superó completamente mis expectativas, ¡muy satisfecho!