Las tiendas con catálogos de productos grandes (10 000 o más productos) a menudo experimentan lentitud en la generación de feeds, tiempos de espera agotados o agotamiento de memoria al crear feeds de productos. El plugin AdTribes Product Feed está diseñado para manejar un número ilimitado de productos, pero debes configurarlo correctamente para tu entorno de servidor y el tamaño de tu catálogo.
Esta guía explica cómo mejorar el rendimiento de la generación de feeds para catálogos grandes. Aprenderás sobre el procesamiento por lotes, los límites del servidor, la generación programada, el filtrado de productos innecesarios y otras consideraciones de rendimiento.
¿Por qué los Feeds Grandes son Diferentes?
Cuando tienes más de 10 000 productos, generar un feed en una sola solicitud puede exceder:
- Límites de Memoria de PHP: Cada producto carga datos (imágenes, atributos, categorías) en la memoria
- Tiempo Máximo de Ejecución: Los scripts de PHP a menudo agotan el tiempo de espera después de 30-60 segundos
- Recursos del Servidor: El alojamiento compartido puede limitar los procesos de larga duración
El plugin utiliza el procesamiento por lotes para dividir la generación del feed en fragmentos más pequeños. Cada lote se ejecuta por separado, por lo que evitas tiempos de espera agotados y agotamiento de memoria. Además, puedes reducir el número de productos en tu feed filtrando los artículos que no necesitas para la publicidad.
¿Cómo Funciona el Procesamiento por Lotes?
El plugin procesa los feeds en lotes. Cada lote maneja un número fijo de productos (el tamaño del lote). Cuando un lote termina, el siguiente se programa automáticamente. Este enfoque reduce el uso de memoria y evita los tiempos de espera agotados de PHP. Para catálogos grandes, el plugin utiliza tamaños de lote predeterminados por niveles basados en tu recuento total de productos:
| Recuento de Productos | Tamaño del Lote |
|---|---|
| Menos de 1000 | 200 productos por lote |
| 1,000-5,000 | 300 productos por lote |
| 5,000-10,000 | 500 productos por lote |
| 10,000-50,000 | 1000 productos por lote |
| 50,000+ | 1500 productos por lote |
Estos valores predeterminados están diseñados para la fiabilidad. Los lotes más pequeños usan menos memoria y es menos probable que alcancen los límites de ejecución. Sin embargo, puedes anularlos si tu servidor tiene más recursos.
Configurar Tamaño de Lote Personalizado
Si tu feed se queda atascado o agota el tiempo de espera, intenta reducir el tamaño del lote. Por el contrario, si tienes un servidor potente y deseas una generación más rápida, puedes aumentarlo.
Cómo Cambiar el Tamaño del Lote
- Ve a Feed de Productos → Ajustes → General
- Habilita Cambiar número de productos por lote
- Introduce un valor en Insertar tamaño de lote: (por ejemplo, 500 o 250)
- Guarda tus ajustes

Recomendaciones:
- Tiempos de espera agotados: Usa un tamaño de lote más pequeño (por ejemplo, 250-500) para que cada lote termine antes del tiempo máximo de ejecución de tu servidor
- Errores de memoria: Reduce aún más el tamaño del lote (por ejemplo, 100-200) para disminuir el uso de memoria por lote
- Servidores estables: Puedes probar lotes más grandes (por ejemplo, 1000-1500) para una generación total más rápida, pero solo si tu servidor los maneja sin errores
Más específicamente:
| Tipo de servidor | Tamaño de lote sugerido |
|---|---|
| Alojamiento compartido | 200–300 |
| VPS o en la nube | 500–1000 |
| Servidor dedicado | 1000–1500 |
Prueba siempre después de cambiar el tamaño del lote. Si el feed todavía se atasca, redúcelo aún más. Para más detalles, consulta Configuración del tamaño del lote del feed de productos.
Comprueba y ajusta los límites del servidor
El entorno de tu alojamiento impone límites al tiempo de ejecución de PHP y a la memoria. Estos afectan directamente a la generación del feed.
max_execution_time
Cada lote se ejecuta dentro de max_execution_time de PHP. Si este valor es demasiado bajo (por ejemplo, 30 o 60 segundos), los lotes pueden cortarse antes de finalizar.
- Recomendado: Al menos 300 segundos (5 minutos) para catálogos grandes
- Cómo comprobar: Ve a WP Admin → WooCommerce → Estado y busca el valor Límite de tiempo de PHP en el Entorno del servidor.
- Cómo solucionar: Aumenta el límite en la configuración de tu servidor añadiendo
set_time_limit(300)al archivowp-config.php, o ponte en contacto con tu proveedor de alojamiento

memory_limit
La generación del feed carga los datos del producto en la memoria. Al procesar miles de productos por lote, un límite de memoria bajo puede provocar errores fatales o feeds incompletos.
- Recomendado: 256 MB o más para más de 10 000 productos
- Cómo comprobar: Ve a WP Admin → WooCommerce → Estado y busca el valor Límite de memoria de WordPress en el Entorno de WordPress .
- Cómo solucionar: Aumenta el límite de memoria en
wp-config.phpañadiendodefine('WP_MEMORY_LIMIT', '256M');o pide a tu proveedor de alojamiento que aumente el límite. o pide a tu soporte de alojamiento que lo haga

El plugin registra una advertencia cuando la memoria disponible está por debajo de 128 MB antes de que se ejecute un lote (si el registro está habilitado). Utiliza esto para detectar posibles problemas.
Utiliza la generación programada en lugar de la actualización manual
Para catálogos grandes, evita depender de la actualización manual desde el navegador. Las solicitudes del navegador pueden agotar el tiempo de espera o desconectarse antes de que todos los lotes se completen. En su lugar, utiliza la generación programada.
Intervalo de actualización
- Edita tu feed y ve a la pestaña General
- Establece el Intervalo de actualización en Cada hora, Diario, o Dos veces al día (Product Feed Elite también admite intervalos personalizados)
- Guarda el feed
El plugin utiliza Action Scheduler para generar el feed en segundo plano en el intervalo elegido. Esto es más fiable que la actualización manual para feeds grandes.
Cron del servidor (Avanzado)
Para un control preciso o tiendas con mucho tráfico, puedes usar un trabajo cron del servidor en lugar del programador integrado. Esto es especialmente útil cuando:
- Quieres que los feeds se ejecuten en momentos específicos (p. ej., horas de menor actividad)
- Tu sitio tiene poco tráfico y el cron de WP puede no ejecutarse con la suficiente frecuencia
- Necesitas escalonar varios feeds grandes
Para obtener instrucciones paso a paso, consulta Cómo actualizar el feed de productos usando trabajos cron.
Deshabilitar solicitudes de generación de feed HTTP
Cuando haces clic en Actualizar en la página Gestionar Feeds, el plugin puede activar la generación de feeds mediante solicitudes HTTP. En tiendas grandes o con alojamiento limitado, esto puede provocar tiempos de espera agotados o feeds incompletos.
Deshabilitar solicitudes de generación de feed HTTP fuerza a que la generación de feeds se ejecute solo a través de Action Scheduler (o cron del servidor). No se utilizan solicitudes HTTP para iniciar o continuar lotes.
Cómo habilitar
- Ve a Feed de Productos → Ajustes → General
- Habilita Deshabilitar solicitudes de generación de feed HTTP
- Guarda tus ajustes

Cuándo usar:
- Tu feed se queda atascado o se agota el tiempo de espera al hacer clic en Actualizar
- Utilizas un tamaño de lote personalizado (el procesamiento por lotes deshabilita el procesamiento HTTP por defecto en ese caso)
- Ejecutas feeds mediante actualización programada o cron del servidor
Para más detalles, consulta ¿Qué hace “Deshabilitar solicitudes de generación de feed HTTP”?.
Filtrar productos innecesarios
Incluir solo los productos que necesitas en tu feed reduce el tiempo de procesamiento y el tamaño del archivo. Usa filtros para excluir productos que no sean relevantes para tu canal.
Estrategias comunes de filtrado
| Objetivo | Tipo de filtro | Condición de ejemplo |
|---|---|---|
| Incluir solo productos disponibles | Incluir | Estado del stock = en stock |
| Incluir productos de una categoría específica | Incluir | Categoría contiene [categoría objetivo] |
| Incluir productos por encima de un precio determinado | Incluir | Precio superior a X |
| Excluir productos sin stock | Excluir | Estado del stock = sin stock |
| Excluir productos sin imágenes | Excluir | La imagen principal está vacía |
| Excluir productos de precio muy bajo | Excluir | Precio inferior a X |
| Excluir categorías específicas | Excluir | La categoría contiene [nombre de la categoría] |
| Excluir marcas o etiquetas específicas | Excluir | La marca/etiqueta contiene [valor] |
Menos productos significan menos lotes y una generación de feeds más rápida. Para obtener instrucciones paso a paso, consulta Cómo crear filtros para tu feed de productos.
Productos variables y variaciones
Si utilizas productos variables, considera:
- Incluir solo la(s) variación(es) de menor precio – Una variación por producto en lugar de todas
- Incluir solo la variación predeterminada del producto – Reduce aún más el número de productos
Estas opciones se encuentran en la pestaña General del feed y pueden reducir significativamente el número de productos procesados.
Resumen de consideraciones de rendimiento
| Factor | Recomendación para más de 10 000 productos |
|---|---|
| Tamaño del lote | 200-500 en hosting compartido; 500-1000 en VPS/dedicado |
| max_execution_time | 300 segundos o más |
| memory_limit | 256 MB o más |
| Método de actualización | Programado (cada hora/diario) o cron del servidor, no solo manual |
| Generación HTTP | Desactivar si los feeds se bloquean o agotan el tiempo de espera |
| Filtros | Excluir categorías sin stock, irrelevantes o de bajo valor |
| Productos variables | Utiliza "el más barato" o "variación predeterminada" cuando sea apropiado |
Solución de problemas comunes
| Incidencia | Solución |
|---|---|
| El feed está atascado en procesamiento | Reduce el tamaño del lote; habilita Deshabilitar generación de feed HTTP; consulta ¡Ayuda! ¿Mi feed no se actualiza o está atascado en procesamiento? |
| Errores de tiempo de espera agotado | Aumenta max_execution_time a 300+; reduce el tamaño del lote |
| Error fatal / memoria agotada | Aumenta memory_limit a 256 MB+; reduce el tamaño del lote |
| Menos productos de los esperados | Comprueba los filtros y las reglas; consulta ¡Ayuda! No tengo ningún producto o tengo menos productos de los esperados en mi feed de productos |
| Fallos de Action Scheduler | Ve a WooCommerce → Estado → Acciones Programadas; comprueba la pestaña Fallidos; aumenta los límites del servidor |
¿Necesita más ayuda?
Si necesitas ayuda para optimizar la generación de feeds para tu catálogo grande:
- Usuarios de Product Feed Elite: Crea un ticket de soporte para contactar con el equipo de soporte de AdTribes.
- Usuarios de Product Feed Pro: Abre un tema en el foro de WordPress.org.


