PS PrestaShop Intermedio

DataFirefly Catalog Merge: fusionar atributos y características duplicados

Instalación, ajustes, fusión de valores de atributos y características duplicados, orden de visualización y resolución de problemas.

Actualizado Versión del módulo 1.0.0

<h2>Instalación</h2>
<p>Instale el módulo desde <strong>Módulos > Gestor de módulos > Subir un módulo</strong> enviando el archivo ZIP, o copiando la carpeta <code>dfcatalogmerge</code> en el directorio <code>/modules/</code> de su tienda y haciendo clic en Instalar.</p>
<p>Durante la instalación, el módulo crea sus dos tablas (posiciones de los valores de características e historial de fusiones), registra el hook <code>filterProductContent</code> y añade una pestaña <strong>Fusión de catálogo</strong> en el menú Catálogo.</p>
<div class=»df-callout warn»><p>Este módulo modifica de forma definitiva los datos de su catálogo. Antes de su primera campaña de limpieza, haga una copia de seguridad de la base de datos. Las fusiones no son reversibles.</p></div>

<h2>Ajustes del módulo</h2>
<p>Los ajustes están en la página de configuración del módulo. Cuatro opciones, todas activadas por defecto.</p>
<h3>Forzar el orden en las fichas de producto</h3>
<p>Aplica las posiciones definidas a los valores de características mostrados en la ficha de producto. Esta opción es imprescindible en PrestaShop 8, cuyo núcleo no ordena los valores de características. En PrestaShop 9 el módulo alimenta además la columna de posición nativa, y la opción garantiza el mismo resultado sea cual sea el ajuste <code>PS_FEATURE_VALUES_ORDER</code> de la tienda.</p>
<h3>Fusionar las combinaciones duplicadas</h3>
<p>Cuando dos combinaciones de un mismo producto quedan idénticas tras una fusión, el módulo las reúne automáticamente. Desactive esta opción solo si desea tratar esos casos a mano, teniendo en cuenta que PrestaShop gestiona mal dos combinaciones con exactamente los mismos atributos.</p>
<h3>Actualizar las tablas de terceros</h3>
<p>El módulo busca en la base de datos todas las tablas con una columna <code>id_attribute</code> o <code>id_feature_value</code> fuera de las tablas del núcleo, en especial el índice de la búsqueda por facetas, y redirige o elimina las filas afectadas. Sin esta opción pueden quedar filtros fantasma tras una fusión.</p>
<h3>Conservar un historial de fusiones</h3>
<p>Registra cada fusión aplicada: valor de origen, valor de destino, número de filas modificadas, empleado y fecha. Consultable en la pestaña Historial.</p>

<h2>Fusionar valores de atributos</h2>
<p>Abra <strong>Catálogo > Fusión de catálogo</strong>, pestaña <strong>Valores de atributos</strong>. Elija el grupo de atributos a limpiar y el idioma en el que quiere leer las etiquetas.</p>
<p>La tabla lista los valores del grupo con el número de productos y de combinaciones que usan cada uno. Marque los duplicados a eliminar, elija el valor a conservar en la lista «Fusionar los valores marcados en» y haga clic en <strong>Simular</strong>.</p>
<h3>Leer el informe de simulación</h3>
<p>La simulación no escribe nada. El informe indica el número de líneas de combinación a convertir, los productos afectados, las combinaciones que ya llevan el valor de destino y las que quedarán idénticas tras la fusión. Si el informe le convence, haga clic en <strong>Aplicar esta fusión</strong>.</p>
<h3>Qué ocurre con las combinaciones</h3>
<p>Todas las combinaciones que usan un valor eliminado pasan al valor conservado. Tres casos particulares se tratan automáticamente:</p>
<ul>
<li>Una combinación ya llevaba el valor de destino y su duplicado: la línea duplicada se retira y el resto de la combinación no se toca.</li>
<li>Dos combinaciones de un mismo producto quedan idénticas: se reúnen. Las cantidades se suman tienda por tienda, las imágenes y los precios específicos se transfieren, la combinación por defecto se conserva y el stock del producto padre se resincroniza.</li>
<li>Los carritos en curso que referencian la combinación eliminada se redirigen a la que permanece.</li>
</ul>
<div class=»df-callout note»><p>Los valores a fusionar deben pertenecer al mismo grupo de atributos que el valor de destino. El módulo rechaza una fusión entre dos grupos distintos, que produciría combinaciones incoherentes.</p></div>

<h2>Fusionar valores de características</h2>
<p>La pestaña <strong>Valores de características</strong> funciona igual: elija una característica, marque los duplicados, elija el valor de destino, simule y aplique.</p>
<p>Las asignaciones de producto se convierten al valor conservado. Si un producto ya llevaba los dos valores, la asignación duplicada se elimina. En PrestaShop 9, los valores de características asociados a las combinaciones se tratan al mismo tiempo.</p>
<h3>Valores personalizados</h3>
<p>PrestaShop permite introducir un valor de característica propio de un solo producto, marcado como <em>personalizado</em> en la tabla. Estos valores son la primera fuente de duplicados tras una importación. Puede fusionarlos en un valor compartido como cualquier otro. Si el valor de destino era a su vez personalizado y acaba utilizado por varios productos tras la fusión, el módulo lo convierte automáticamente en valor compartido.</p>

<h2>Detectar duplicados automáticamente</h2>
<p>La pestaña <strong>Detección de duplicados</strong> analiza todo el catálogo y agrupa los valores cuya etiqueta es idéntica ignorando mayúsculas, acentos, puntuación y espacios repetidos. «Rojo», «rojo» y «ROJO» forman así un único grupo, igual que «Algodón bio» y «algodon-bio».</p>
<p>Para cada grupo se propone como destino el valor más utilizado, con preferencia por los valores compartidos frente a los personalizados. El botón <strong>Simular esta fusión</strong> envía el grupo a la pantalla de simulación, donde usted mantiene el control de la decisión final.</p>
<p>El análisis se realiza en el idioma seleccionado. En un catálogo multiidioma, relance el análisis en cada idioma: un duplicado puede existir solo en una traducción.</p>

<h2>Definir el orden de visualización</h2>
<p>En las dos primeras pestañas, cada fila tiene un tirador a la izquierda. Arrastre una fila para cambiar su posición: el nuevo orden se guarda al instante, sin recargar la página.</p>
<p>El botón <strong>Ordenar automáticamente</strong> coloca los valores sin intervención manual. Las tallas de ropa siguen la secuencia XS, S, M, L, XL, XXL en lugar del orden alfabético, y los valores numéricos siguen el orden natural: 2 antes que 10, 39 antes que 41.</p>
<h3>Lo que ve el cliente</h3>
<p>Para los valores de atributos, la posición es la que usa el selector de combinaciones de la ficha de producto, tanto en PrestaShop 8 como en PrestaShop 9. No hace falta ningún ajuste adicional.</p>
<p>Para los valores de características, el orden se aplica a la tabla de características de la ficha de producto siempre que la opción «Forzar el orden en las fichas de producto» esté activa. En PrestaShop 9 la posición nativa se alimenta en paralelo, lo que traslada el mismo orden a las demás pantallas del back-office.</p>
<div class=»df-callout tip»><p>Si el orden no cambia en el front tras una modificación, vacíe la caché de la tienda. Las fichas de producto se almacenan en caché tanto por PrestaShop como por la mayoría de módulos de rendimiento.</p></div>

<h2>Historial de fusiones</h2>
<p>La pestaña <strong>Historial</strong> lista las fusiones aplicadas, de la más reciente a la más antigua: fecha, tipo, valor de origen con su identificador, valor conservado y número de filas modificadas. Los identificadores se conservan para permitir el cotejo con una copia de seguridad de la base de datos si necesita revertir algo manualmente.</p>

<h2>Buenas prácticas</h2>
<ul>
<li>Haga una copia de seguridad de la base de datos antes de una campaña de limpieza, sobre todo en catálogos de varios miles de productos.</li>
<li>Simule siempre. El informe le muestra las combinaciones que van a desaparecer por fusión antes de que ocurra.</li>
<li>Trabaje grupo por grupo en lugar de en una sola pasada, para mantener informes legibles.</li>
<li>Tras una fusión importante, relance la indexación de la búsqueda por facetas si usa ese módulo.</li>
<li>En una tienda con mucho tráfico, aplique las fusiones en horas de baja actividad: la conversión de combinaciones bloquea brevemente las tablas implicadas.</li>
</ul>

<h2>Resolución de problemas</h2>
<h3>La fusión se rechaza con un mensaje sobre el grupo de atributos</h3>
<p>Todos los valores marcados deben pertenecer al mismo grupo de atributos que el valor de destino, o a la misma característica en el caso de los valores de características. Compruebe que no ha marcado un valor de otro grupo con el mismo nombre.</p>
<h3>El orden de los valores de características no cambia en la ficha de producto</h3>
<p>Compruebe que la opción «Forzar el orden en las fichas de producto» está activa y vacíe la caché. Si su plantilla muestra las características mediante un módulo de terceros en lugar de las variables nativas de la ficha de producto, puede que no se aplique el orden: contáctenos indicando el nombre de la plantilla.</p>
<h3>Una fusión se ha interrumpido</h3>
<p>Las escrituras se realizan en una transacción: en caso de error la base vuelve a su estado inicial y no se pierde ningún dato. El mensaje de error mostrado en la parte superior de la pantalla contiene la causa. Las tablas deben ser InnoDB para que la anulación funcione.</p>
<h3>Los filtros por facetas siguen mostrando el valor eliminado</h3>
<p>Asegúrese de que la opción «Actualizar las tablas de terceros» estaba activa durante la fusión y relance la indexación del módulo de navegación por facetas desde su página de configuración.</p>

<h2>Compatibilidad</h2>
<ul>
<li>PrestaShop 8.0 a 9.x, el mismo ZIP cubre ambas ramas.</li>
<li>Multitienda y multiidioma.</li>
<li>Arquitectura ModuleAdminController, sin dependencia de Composer.</li>
<li>Interfaz disponible en español, francés, inglés, alemán, italiano, neerlandés, polaco y portugués.</li>
</ul>

¿Te ha resultado útil esta página?

¿Sigues atascado? Contacta con soporte