# Posiciones de Productos — Guía completa

> Presentación Posiciones de Productos gestiona el orden de los productos en sus categorías de PrestaShop, es decir, la columna nativa category_product.position que la tienda utiliza para la ordenación «Relevancia» /…

- Página: <https://www.datafirefly.com/es/documentation/dfproductpositions/>
- Idioma: es
- Actualizado el: 2026-11-01
- Otros idiomas: [fr](https://www.datafirefly.com/documentation/dfproductpositions/index.md), [en](https://www.datafirefly.com/en/documentation/dfproductpositions/index.md), [de](https://www.datafirefly.com/de/documentation/dfproductpositions/index.md), [it](https://www.datafirefly.com/it/documentation/dfproductpositions/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfproductpositions/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfproductpositions/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfproductpositions/index.md)
- Índice: <https://www.datafirefly.com/es/documentation/llms.txt>

## Presentación

Posiciones de Productos gestiona el orden de los productos en sus categorías de PrestaShop, es decir, la columna nativa `category_product.position` que la tienda utiliza para la ordenación «Relevancia» / «Posición en la categoría». Organiza una categoría como un tablero de merchandising: cuadrícula de tarjetas de producto, arrastrar y soltar varios productos a la vez, orden automático, fijaciones que protegen sus posiciones estratégicas frente a las importaciones, historial con deshacer y reglas automáticas aplicadas cada día.

El módulo no modifica su tema: el orden definido en el back office es el que ven sus clientes, tanto con Classic como con Hummingbird.

![DataFirefly Posiciones de productos: tablero de merchandising con árbol de categorías, cuadrícula de productos, productos fijados, stock, ventas y saltos de página](https://www.datafirefly.com/wp-content/uploads/2026/11/tablero-merchandising-cuadricula-productos-productpositions-es.webp)

Tablero de merchandising con árbol de categorías, cuadrícula de productos, productos fijados, stock, ventas y saltos de página

## Compatibilidad y requisitos

- **PrestaShop 1.7.8 a 9.x**: un único paquete, probado en 1.7.8.11, 8.2.1 y 9.1.5.
- **PHP 7.4 a 8.5.**
- Temas Classic, Hummingbird y temas personalizados (el módulo no muestra nada en el front office).
- Tienda única y multitienda, todos los idiomas de la tienda.
- Ningún servicio externo. La biblioteca de arrastrar y soltar (SortableJS, licencia MIT) se incluye en el módulo.
- Recomendado: la extensión PHP `intl`, para ordenar los nombres según el orden alfabético de cada idioma (sin ella, el orden simplemente ignora los acentos).

## Instalación y actualización

1. Abra **Módulos > Gestor de módulos**, haga clic en **Subir un módulo** y suelte `dfproductpositions-2.0.0.zip`.
2. La entrada **Catálogo > Posiciones de productos** aparece en el menú, traducida al idioma de cada empleado.
3. El botón **Configurar** del gestor de módulos abre directamente el módulo.

Para **actualizar** desde una versión 1.x, suba el nuevo archivo encima del anterior: la migración se ejecuta automáticamente. El orden de sus categorías no se modifica y cada fijación toma el puesto que ocupa su producto en el momento de la actualización.

El módulo tiene cuatro pantallas, accesibles desde la barra de navegación: **Organizar**, **Reglas automáticas**, **Panel** y **Ajustes**. Al abrirlo, elija una categoría en el árbol de la izquierda.

![DataFirefly Posiciones de productos: pantalla de inicio con el árbol de categorías y consejos](https://www.datafirefly.com/wp-content/uploads/2026/11/pantalla-inicio-arbol-categorias-productpositions-es.webp)

Pantalla de inicio con el árbol de categorías y consejos

## Organizar una categoría

El árbol de la izquierda muestra todas las categorías de la tienda con su número de productos, un punto naranja cuando la categoría contiene productos fijados y un rayo violeta cuando tiene una regla automática. El campo de búsqueda filtra el árbol y resalta los nombres encontrados.

A la derecha, la categoría se muestra en el orden de la tienda:

- **Vista de cuadrícula**: una tarjeta por producto con la posición, la miniatura, el nombre, la referencia, el ID, el precio sin IVA, el stock (verde, naranja por debajo del umbral de stock bajo, rojo si está agotado) y las unidades vendidas en el periodo elegido. Unas insignias señalan los productos nuevos, en oferta, inactivos o ausentes de la tienda actual.
- **Vista de lista**: la misma información en filas compactas, con la fecha de alta.
- **Mostrar páginas**: un separador «Página 2 · posiciones 13 a 24» indica dónde empieza cada página de la categoría, según el número de productos por página de su tienda.
- **Búsqueda** por nombre, referencia o ID (atajo /).
- El selector de idioma cambia el idioma de los nombres mostrados, y el icono junto al título abre la categoría en la tienda.

Cada cambio se guarda automáticamente; el indicador de arriba a la derecha confirma «Cambios guardados».

![DataFirefly Posiciones de productos: vista de lista con posición, precio, stock, ventas y fecha de alta](https://www.datafirefly.com/wp-content/uploads/2026/11/vista-lista-posiciones-productpositions-es.webp)

Vista de lista con posición, precio, stock, ventas y fecha de alta

## Mover los productos

### Arrastrar y soltar

Tome una tarjeta y suéltela donde quiera; la página se desplaza automáticamente cuando se acerca al borde. Durante una búsqueda, arrastrar y soltar se desactiva para evitar errores, pero la selección y las acciones siguen disponibles.

### Selección múltiple

Haga clic en varias tarjetas para seleccionarlas, Mayús + clic para seleccionar un rango, Ctrl + A para seleccionarlo todo, Esc para quitar la selección. Aparece una barra de acciones en la parte inferior de la pantalla: **Mover al principio**, **Mover al final**, **Mover a la posición…**, **Fijar** y **Liberar**. Los productos seleccionados se colocan uno tras otro, en su orden actual.

![DataFirefly Posiciones de productos: selección múltiple de productos con la barra de acciones masivas](https://www.datafirefly.com/wp-content/uploads/2026/11/seleccion-multiple-acciones-masivas-productpositions-es.webp)

Selección múltiple de productos con la barra de acciones masivas

### Arrastrar varios productos a la vez

Cuando hay varios productos seleccionados, arrastre uno de ellos: los demás lo siguen y una insignia «+2» indica cuántos productos se están llevando. Al soltarlos, se agrupan en ese lugar.

![DataFirefly Posiciones de productos: arrastrar y soltar varios productos a la vez](https://www.datafirefly.com/wp-content/uploads/2026/11/arrastrar-soltar-varios-productos-productpositions-es.webp)

Arrastrar y soltar varios productos a la vez

### Escribir una posición

Haga clic en el número de posición de una tarjeta, escriba el nuevo puesto y confirme con Intro. Los botones que aparecen al pasar el ratón por una tarjeta también envían el producto al principio o al final, lo fijan o abren su ficha.

## Orden automático

El botón **Ordenar automáticamente** ordena toda la categoría según un criterio:

- **Más vendidos** en 7, 30, 90, 180 o 365 días (pedidos válidos de la tienda actual);
- **Fecha de alta** (más recientes primero);
- **Stock**;
- **Precio** (precio base sin IVA);
- **Margen** (precio de venta menos precio de coste);
- **Nombre** (orden alfabético del idioma);
- **Referencia** (orden natural: REF-2 antes que REF-10);
- **Productos en oferta primero**;
- **Orden actual**, **Invertir el orden actual** y **Mezclar**.

Opciones: **Agotados al final**, **Productos inactivos al final** y **Ordenar también las subcategorías**. La casilla **Mantener el orden: guardar como regla automática** convierte el orden en una regla aplicada cada día.

Los productos fijados conservan su posición, y cada orden se puede deshacer en un clic.

![DataFirefly Posiciones de productos: orden automático por más vendidos, fecha de alta, stock, precio o margen, agotados al final y regla automática](https://www.datafirefly.com/wp-content/uploads/2026/11/orden-automatico-mas-vendidos-productpositions-es.webp)

Orden automático por más vendidos, fecha de alta, stock, precio o margen, agotados al final y regla automática

## Fijar posiciones

Una fijación bloquea un producto en su puesto actual dentro de la categoría. Un producto fijado muestra una insignia naranja con su número de posición.

- Los órdenes automáticos, las reglas y las importaciones CSV nunca mueven un producto fijado: los demás productos se colocan a su alrededor.
- Si usted mismo mueve un producto fijado, se vuelve a fijar en su nueva posición.
- Un producto no fijado que se suelta en el lugar de una fijación se coloca justo después de ella.

### Fijación temporal

Al fijar una selección, puede indicar una fecha de fin, por ejemplo el final de una promoción. La tarea programada retira la fijación automáticamente en esa fecha, y la fecha aparece en la tarjeta.

![DataFirefly Posiciones de productos: fijar productos en su posición hasta una fecha](https://www.datafirefly.com/wp-content/uploads/2026/11/fijar-producto-hasta-fecha-productpositions-es.webp)

Fijar productos en su posición hasta una fecha

### Fijar toda la categoría

El menú **Fijaciones** ofrece **Fijar toda la categoría** (cada producto conserva su posición, incluso después de una importación), **Quitar todas las fijaciones** (el orden no cambia) y **Recolocar las fijaciones**.

### Recolocación automática

Cuando la opción está activada (por defecto), los productos fijados vuelven a su posición después de guardar, añadir o eliminar un producto, después de un cambio de posición realizado desde el back office nativo o mediante el webservice (ERP), y en cada ejecución de la tarea programada. Si otra herramienta ha movido productos fijados, un aviso lo indica al abrir la categoría, con un botón **Recolocar**.

Un script que escribe directamente en la base de datos no dispara ningún evento de PrestaShop. En ese caso, la tarea programada recoloca las fijaciones en su siguiente ejecución, o puede hacerlo de inmediato desde el menú **Fijaciones**.

## Deshacer e historial

Los botones **Deshacer** y **Rehacer** (Ctrl + Z / Ctrl + Y) restauran exactamente el orden y las fijaciones anteriores. Las notificaciones tras un orden o un movimiento también proponen «Deshacer».

El menú **Más > Historial** lista los cambios de la categoría (arrastrar y soltar, órdenes, reglas, fijaciones, importaciones, tarea programada) con la fecha, el autor y el número de productos movidos. **Restaurar** devuelve la categoría al orden que tenía antes del cambio elegido. El número de versiones conservadas por categoría se ajusta en los ajustes (30 por defecto).

![DataFirefly Posiciones de productos: historial de cambios de una categoría con restauración de un orden anterior](https://www.datafirefly.com/wp-content/uploads/2026/11/historial-cambios-restaurar-productpositions-es.webp)

Historial de cambios de una categoría con restauración de un orden anterior

## Importación y exportación CSV

**Más > Exportar el orden (CSV)** descarga la categoría con la posición, el ID, la referencia, el nombre y el estado de fijación (separador punto y coma, UTF-8).

**Más > Importar un orden (CSV)** lee un archivo con un producto por línea, identificado por `id_product` o `reference`; también se lee una columna `position` opcional. Haga clic primero en **Comprobar el archivo**: el módulo indica cuántos productos de la categoría se han encontrado y lista las referencias desconocidas. Los productos de la lista van primero, los demás siguen en su orden actual y los productos fijados conservan su posición. La importación se puede deshacer.

![DataFirefly Posiciones de productos: importación CSV de un orden de productos con comprobación del archivo](https://www.datafirefly.com/wp-content/uploads/2026/11/importacion-csv-orden-productpositions-es.webp)

Importación CSV de un orden de productos con comprobación del archivo

## Reglas automáticas y tarea programada

Una regla mantiene una categoría ordenada por sí sola: más vendidos de los últimos 30 días, más recientes primero, agotados al final… Cada categoría puede tener una regla, activa o en pausa. La pantalla **Reglas automáticas** muestra para cada una la última ejecución y el número de productos movidos, con los botones **Aplicar ahora**, **Editar** y **Eliminar**.

Las reglas las aplica la **tarea programada**: llame a la URL indicada una vez al día (o cada hora) desde su servidor o el panel de su alojamiento. La pantalla ofrece un botón **Copiar** y un ejemplo de línea crontab:

```
15 4 * * * curl -fsS "https://mi-tienda.com/module/dfproductpositions/cron?token=…" > /dev/null
```

En cada ejecución, la tarea retira las fijaciones caducadas, aplica las reglas activas y recoloca los productos fijados. La URL está protegida por una clave secreta, que puede renovar en los ajustes.

![DataFirefly Posiciones de productos: reglas de orden automático por categoría y URL de la tarea programada](https://www.datafirefly.com/wp-content/uploads/2026/11/reglas-orden-automatico-cron-productpositions-es.webp)

Reglas de orden automático por categoría y URL de la tarea programada

### Crear o editar una regla

Elija la categoría, el criterio, el sentido y, para los más vendidos, el periodo. Las opciones «agotados al final», «productos inactivos al final» y «ordenar también las subcategorías» están disponibles. **Guardar y aplicar** ordena la categoría inmediatamente.

![DataFirefly Posiciones de productos: editor de regla automática: categoría, criterio, periodo de ventas y opciones](https://www.datafirefly.com/wp-content/uploads/2026/11/editor-regla-automatica-productpositions-es.webp)

Editor de regla automática: categoría, criterio, periodo de ventas y opciones

## Panel

El panel resume la actividad: categorías organizadas, productos fijados (y fijaciones que terminan en los próximos 7 días), reglas activas, productos movidos en 7 días y problemas de numeración.

Las **comprobaciones de la tienda** verifican los ajustes que deciden si sus clientes ven el orden definido aquí: orden predeterminado de la tienda en «Posición en la categoría», opciones de la búsqueda por facetas, numeración de las posiciones, ejecución de la tarea programada y número de productos por página.

La sección **Integridad de las posiciones** lista las categorías en las que varios productos comparten la misma posición. Su orden es entonces aleatorio, y un producto puede aparecer en dos páginas o en ninguna. **Reparar** renumera 1, 2, 3… sin cambiar el orden mostrado.

![DataFirefly Posiciones de productos: panel con comprobaciones de la tienda, integridad de las posiciones y actividad reciente](https://www.datafirefly.com/wp-content/uploads/2026/11/panel-comprobaciones-integridad-productpositions-es.webp)

Panel con comprobaciones de la tienda, integridad de las posiciones y actividad reciente

## Ajustes

- **Recolocar automáticamente los productos fijados** (activado por defecto).
- **Periodo de ventas** mostrado en las tarjetas y utilizado por defecto por el orden «Más vendidos» (90 días).
- **Umbral de stock bajo** (5).
- **Versiones conservadas por categoría** en el historial (30).
- **Mostrar por defecto los saltos de página** de la tienda.
- **Avisar a los demás módulos tras cada cambio** (`actionCategoryUpdate`), para que los módulos que guardan listas de productos en caché las actualicen.
- URL de la tarea programada y renovación de su clave secreta.

![DataFirefly Posiciones de productos: ajustes: fijaciones, periodo de ventas, stock bajo, historial y tarea programada](https://www.datafirefly.com/wp-content/uploads/2026/11/ajustes-fijaciones-cron-productpositions-es.webp)

Ajustes: fijaciones, periodo de ventas, stock bajo, historial y tarea programada

## Lo que ven sus clientes

El módulo escribe en la posición nativa de PrestaShop: la página de categoría muestra los productos en el orden definido, sin modificar el tema. Dos ajustes de la tienda merecen atención, y el panel los comprueba:

- en **Parámetros de la tienda > Configuración de Productos**, el orden predeterminado debe ser «Posición en la categoría», ascendente;
- con la búsqueda por facetas y la opción «Mostrar los productos de las subcategorías», una categoría padre mezcla las posiciones de sus subcategorías. Para controlar exactamente una categoría padre, ordénela junto con sus subcategorías o desactive esta opción.

![DataFirefly Posiciones de productos: página de categoría de la tienda mostrada en el orden definido en el back office](https://www.datafirefly.com/wp-content/uploads/2026/11/pagina-categoria-ordenada-tienda-productpositions-es.webp)

Página de categoría de la tienda mostrada en el orden definido en el back office

## Permisos de los empleados y multitienda

El acceso sigue los permisos nativos de PrestaShop (**Parámetros Avanzados > Equipo > Permisos**). Un perfil que solo tiene el permiso «Ver» en la pestaña _Posiciones de productos_ consulta las categorías, el historial y el panel en modo de solo lectura; todos los cambios requieren el permiso «Editar». Todas las peticiones están protegidas por el token de administración de PrestaShop.

En multitienda, el orden de una categoría es común a todas las tiendas (así funciona PrestaShop: la posición no existe por tienda). Por eso el módulo muestra todos los productos de la categoría y señala con una insignia los que no se venden en la tienda actual. Las fijaciones también son comunes; las ventas, los precios y el stock mostrados son los de la tienda seleccionada.

## Actualización desde 1.x y desinstalación

La migración a 2.0.0 añade las tablas de reglas e historial, conserva el orden de todas las categorías y coloca cada fijación en el puesto real de su producto. De paso, corrige el desfase de una posición de las fijaciones observado en 1.x.

La desinstalación elimina las fijaciones, las reglas, el historial, los ajustes y la entrada del menú. El orden de sus categorías se conserva, ya que se almacena en la posición nativa de PrestaShop.

## Preguntas frecuentes

### ¿Hay que fijar todos los productos para conservar mi orden?

No. El orden definido se mantiene mientras ningún orden, ninguna regla ni ninguna herramienta externa lo modifique. Fije los productos cuya posición es estratégica, o toda la categoría si un ERP reorganiza sus productos.

### ¿Cómo pongo mis productos destacados en cabeza y ordeno el resto automáticamente?

Coloque los productos destacados en cabeza, fíjelos y luego lance un orden (o cree una regla) «Más vendidos». Los destacados se quedan en los primeros puestos y el resto se ordena detrás de ellos.

### ¿Se recalcula el orden en cada visita?

No. Un orden o una regla escribe las posiciones una vez; las páginas de la tienda no hacen ningún cálculo adicional.

### ¿Y con un catálogo grande?

En una categoría de 5.000 productos (PrestaShop 9.1, PHP 8.5), medimos 0,56 s para cargar y mostrar la cuadrícula, 0,44 s para un orden por nombre y 0,24 s entre soltar una tarjeta y el guardado.

### Un producto aparece en dos páginas de mi categoría, o falta. ¿Por qué?

Probablemente varios productos comparten la misma posición, algo que ocurre tras ciertas importaciones. Abra el **Panel**: la sección **Integridad de las posiciones** lista esas categorías y las repara sin cambiar el orden mostrado.

### El orden de mi categoría padre no corresponde a lo que he definido.

Probablemente la búsqueda por facetas muestra los productos de las subcategorías en la categoría padre. Consulte la sección «Lo que ven sus clientes».

### No veo los botones de modificación.

Su perfil solo tiene el permiso «Ver» en la pestaña _Posiciones de productos_. Un administrador puede añadir el permiso «Editar» en **Equipo > Permisos**.

### Las reglas no se aplican.

Compruebe que la tarea programada llama correctamente a la URL del módulo: el panel indica la fecha de su última ejecución. Las reglas en pausa no se aplican.
