Habilitación del Módulo de Manipulación de Swiper
Si estás usando el módulo Product Video de Smart Modules en un tema de PrestaShop que usa Swiper Slider, podrías encontrar un problema donde la miniatura del video no aparece junto a las imágenes de tu producto.
Esto generalmente sucede cuando el módulo Manipulation de Swiper no ha sido habilitado. El módulo es esencial para permitir que elementos dinámicos (como diapositivas de video) se inserten en el slider en tiempo de ejecución.
🧠 ¿Cuándo Necesitas Esto?
Podrías ver un error como este en la consola de tu navegador:
Uncaught TypeError: slider.addSlide is not a function
Este error significa que el slider Swiper en tu tema no está inicializado con el módulo Manipulation, que es requerido por el módulo Product Video para agregar dinámicamente miniaturas de video como diapositivas.
¿Las buenas noticias? Solucionar esto solo requiere una pequeña edición en el código de inicialización de Swiper de tu tema.
🛠️ Paso a Paso: Cómo Habilitar el Módulo de Manipulación
1. Localiza el Código de Inicialización de Swiper
En los archivos de tu tema, localiza el archivo JavaScript que inicializa el slider de imágenes del producto. Esto típicamente se encuentra en:
/themes/tu-tema/assets/js/product.js
/themes/tu-tema/js/product.js
/themes/tu-tema/js/custom.js
Busca una configuración de Swiper como esta:
var swiper = new Swiper('.swiper-container', {
// tus opciones de Swiper
});
2. Agrega el Módulo Manipulation
Dentro de la configuración de Swiper, encuentra la propiedad modules. Agrega Manipulation a la lista.
Ejemplo antes:
modules: [Navigation, Pagination],
Actualiza a:
modules: [Navigation, Pagination, Manipulation],
Si la propiedad modules aún no existe, agrégala así:
modules: [Manipulation],
No elimines ningún módulo existente — solo agrega Manipulation a la lista.
3. Limpia la Caché de PrestaShop
Después de guardar tus cambios:
- Ve a tu Back Office
- Navega a Parámetros Avanzados > Rendimiento
- Haz clic en Limpiar Caché
Esto asegura que tu JavaScript actualizado se cargue correctamente.
4. Prueba el Resultado
Recarga cualquier página de producto con un video adjunto. Si todo está correcto, la miniatura del video ahora aparecerá como parte de la galería de imágenes del producto, completamente integrada en el slider Swiper.
📚 Enlaces Relacionados
- Documentación API de Swiper – Módulo de Manipulación
- Módulo Product Video de Smart Modules – Marketplace de Addons
- Módulo Product Video de Smart Modules – Smart-Modules.com
¿Qué error indica que falta el módulo Manipulation de Swiper?
Verás un error en la consola del navegador que dice: Uncaught TypeError: slider.addSlide is not a function. Esto significa que Swiper se inicializó sin el módulo Manipulation, que el módulo Product Video necesita para insertar diapositivas de vídeo dinámicamente.
¿Dónde encuentro el código de inicialización de Swiper en mi tema?
Busca en los archivos JavaScript de tu tema, normalmente en themes/tu-tema/assets/js/product.js, themes/tu-tema/js/product.js o themes/tu-tema/js/custom.js. Busca new Swiper para encontrar el bloque de inicialización.
¿Tengo que eliminar los módulos existentes de Swiper al añadir Manipulation?
No. Añade Manipulation al array de módulos existente sin eliminar nada. Por ejemplo, si dice modules: [Navigation, Pagination], cámbialo a modules: [Navigation, Pagination, Manipulation].
Tras editar la configuración de Swiper, ¿por qué no aparece la miniatura del vídeo?
Debes limpiar la caché de PrestaShop después de guardar los cambios en el JavaScript. Ve a Back Office, luego a Parámetros Avanzados, luego a Rendimiento, y haz clic en Limpiar caché.
💬 ¿Aún Necesitas Ayuda?
Si no estás seguro de dónde se encuentra este código o cómo modificarlo, no dudes en contactar a nuestro equipo de soporte. También puedes enviarnos el archivo donde Swiper está inicializado, y con gusto te guiaremos a través del cambio.
Siguiendo estos pasos, asegurarás la compatibilidad completa entre el slider Swiper de tu tema y el módulo Product Video de Smart Modules, manteniendo tus miniaturas de video funcionando sin problemas y evitando cualquier error de JavaScript.