Les magasins avec de grands catalogues de produits (10 000 produits ou plus) rencontrent souvent des problèmes de génération de flux lents, des timeouts ou des dépassements de mémoire lors de la création de flux de produits. Le plugin AdTribes Product Feed est conçu pour gérer un nombre illimité de produits, mais vous devez le configurer correctement pour votre environnement serveur et la taille de votre catalogue.
Ce guide explique comment améliorer les performances de génération de flux pour les grands catalogues. Vous découvrirez le traitement par lots, les limites du serveur, la génération planifiée, le filtrage des produits inutiles et d'autres considérations de performance.
Pourquoi les grands flux sont différents
Lorsque vous avez plus de 10 000 produits, la génération d'un flux en une seule requête peut dépasser :
- Limites de mémoire PHP – Chaque produit charge des données (images, attributs, catégories) en mémoire
- Temps d'exécution maximum – Les scripts PHP expirent souvent après 30 à 60 secondes
- Ressources serveur – L'hébergement mutualisé peut limiter les processus de longue durée
Le plugin utilise le traitement par lots pour diviser la génération du flux en petits morceaux. Chaque lot s'exécute séparément, vous évitant ainsi les timeouts et les dépassements de mémoire. De plus, vous pouvez réduire le nombre de produits dans votre flux en filtrant les articles dont vous n'avez pas besoin pour la publicité.
Comment fonctionne le traitement par lots
Le plugin traite les flux par lots. Chaque lot gère un nombre fixe de produits (la taille du lot). Lorsqu'un lot est terminé, le suivant est planifié automatiquement. Cette approche réduit l'utilisation de la mémoire et évite les timeouts PHP. Pour les grands catalogues, le plugin utilise des tailles de lots par défaut échelonnées en fonction de votre nombre total de produits :
| Nombre de produits | Taille du lot |
|---|---|
| Moins de 1 000 | 200 produits par lot |
| 1,000-5,000 | 300 produits par lot |
| 5,000-10,000 | 500 produits par lot |
| 10,000-50,000 | 1 000 produits par lot |
| 50,000+ | 1 500 produits par lot |
Ces valeurs par défaut sont conçues pour la fiabilité. Les lots plus petits utilisent moins de mémoire et sont moins susceptibles d'atteindre les limites d'exécution. Cependant, vous pouvez les remplacer si votre serveur dispose de plus de ressources.
Configurer une taille de lot personnalisée
Si votre flux se bloque ou expire, essayez de réduire la taille du lot. Inversement, si vous avez un serveur puissant et que vous souhaitez une génération plus rapide, vous pouvez l'augmenter.
Comment modifier la taille des lots
- Allez dans Flux de produits → Paramètres → Général
- Activez Modifier le nombre de produits par lot
- Entrez une valeur dans Insérer la taille du lot : (par exemple, 500 ou 250)
- Enregistrez vos paramètres

Recommandations :
- Timeouts : Utilisez une taille de lot plus petite (par exemple, 250-500) afin que chaque lot se termine avant le temps d'exécution maximum de votre serveur
- Erreurs de mémoire : Réduisez davantage la taille du lot (par exemple, 100-200) pour réduire l'utilisation de la mémoire par lot
- Serveurs stables : Vous pouvez essayer des lots plus importants (par exemple, 1 000-1 500) pour une génération totale plus rapide, mais seulement si votre serveur les gère sans erreurs
Plus spécifiquement :
| Type de serveur | Taille de lot suggérée |
|---|---|
| Hébergement mutualisé | 200–300 |
| VPS ou Cloud | 500–1000 |
| Serveur dédié | 1000–1500 |
Testez toujours après avoir modifié la taille du lot. Si le flux est toujours bloqué, réduisez-la davantage. Pour plus de détails, consultez la configuration de la taille du lot pour le flux de produits.
Vérifier et ajuster les limites du serveur
Votre environnement d'hébergement impose des limites au temps d'exécution de PHP et à la mémoire. Celles-ci affectent directement la génération du flux.
max_execution_time
Chaque lot s'exécute dans le cadre de la max_execution_time de PHP. Si celle-ci est trop basse (par exemple, 30 ou 60 secondes), les lots peuvent être interrompus avant de se terminer.
- Recommandé : Au moins 300 secondes (5 minutes) pour les catalogues volumineux
- Comment vérifier : Allez dans WP Admin → WooCommerce → Statut, et trouvez la valeur Temps limite PHP dans l'Environnement du serveur.
- Comment corriger : Augmentez la limite dans la configuration de votre serveur en ajoutant
set_time_limit(300)au fichierwp-config.php, ou contactez votre fournisseur d'hébergement.

memory_limit
La génération du flux charge les données des produits en mémoire. Lors du traitement de milliers de produits par lot, une limite de mémoire faible peut entraîner des erreurs fatales ou des flux incomplets.
- Recommandé : 256 Mo ou plus pour 10 000+ produits
- Comment vérifier : Allez dans WP Admin → WooCommerce → Statut, et trouvez la valeur Limite de mémoire WordPress dans l'Environnement WordPress .
- Comment corriger : Augmentez la limite de mémoire dans
wp-config.phpen ajoutantdefine('WP_MEMORY_LIMIT', '256M');ou demandez à votre fournisseur d'hébergement d'augmenter la limite.r demandez à votre support d'hébergement de le faire.

Le plugin enregistre un avertissement lorsque la mémoire disponible est inférieure à 128 Mo avant l'exécution d'un lot (si la journalisation est activée). Utilisez ceci pour repérer les problèmes potentiels.
Utiliser la génération planifiée au lieu du rafraîchissement manuel
Pour les catalogues volumineux, évitez de vous fier au rafraîchissement manuel depuis le navigateur. Les requêtes du navigateur peuvent expirer ou se déconnecter avant que tous les lots ne soient terminés. Utilisez plutôt la génération planifiée.
Intervalle de rafraîchissement
- Modifiez votre flux et allez dans l'onglet Général
- Définissez l'Intervalle de rafraîchissement sur Horaire, Quotidien, ou Deux fois par jour (Product Feed Elite prend également en charge les intervalles personnalisés)
- Enregistrer le flux
Le plugin utilise Action Scheduler pour exécuter la génération du flux en arrière-plan à l'intervalle choisi. C'est plus fiable que le rafraîchissement manuel pour les flux volumineux.
Cron du serveur (Avancé)
Pour un contrôle précis ou des boutiques à fort trafic, vous pouvez utiliser une tâche cron du serveur au lieu du planificateur intégré. Ceci est particulièrement utile lorsque :
- Vous souhaitez que les flux s'exécutent à des heures précises (par exemple, pendant les heures creuses)
- Votre site a peu de trafic et le cron de WP peut ne pas s'exécuter assez souvent
- Vous devez échelonner plusieurs flux volumineux
Pour des instructions étape par étape, consultez Comment actualiser le flux de produits à l'aide des tâches cron.
Désactiver les requêtes de génération de flux HTTP
Lorsque vous cliquez sur Actualiser sur la page Gérer les flux, le plugin peut déclencher la génération de flux via des requêtes HTTP. Sur les boutiques volumineuses ou l'hébergement limité, cela peut entraîner des erreurs de délai d'attente ou des flux incomplets.
Désactiver les requêtes de génération de flux HTTP force la génération de flux à s'exécuter uniquement via Action Scheduler (ou le cron du serveur). Aucune requête HTTP n'est utilisée pour démarrer ou continuer les lots.
Comment activer
- Allez dans Flux de produits → Paramètres → Général
- Activez Désactiver les requêtes de génération de flux HTTP
- Enregistrez vos paramètres

Quand l'utiliser :
- Votre flux reste bloqué ou expire lorsque vous cliquez sur Actualiser
- Vous utilisez une taille de lot personnalisée (le traitement par lots désactive le traitement HTTP par défaut dans ce cas)
- Vous exécutez des flux via une actualisation planifiée ou un cron de serveur
Pour plus de détails, consultez Que fait « Désactiver les requêtes de génération de flux HTTP » ?.
Filtrer les produits inutiles
Inclure uniquement les produits dont vous avez besoin dans votre flux réduit le temps de traitement et la taille du fichier. Utilisez des filtres pour exclure les produits qui ne sont pas pertinents pour votre canal.
Stratégies de filtrage courantes
| Objectif | Type de filtre | Exemple de condition |
|---|---|---|
| Inclure uniquement les produits disponibles | Inclure | Statut du stock = en stock |
| Inclure les produits d'une catégorie spécifique | Inclure | La catégorie contient [catégorie cible] |
| Inclure les produits au-dessus d'un certain prix | Inclure | Prix supérieur à X |
| Exclure les produits en rupture de stock | Exclure | Statut du stock = en rupture de stock |
| Exclure les produits sans images | Exclure | L'image principale est vide |
| Exclure les produits à très bas prix | Exclure | Prix inférieur à X |
| Exclure des catégories spécifiques | Exclure | La catégorie contient [nom de la catégorie] |
| Exclure des marques ou des étiquettes spécifiques | Exclure | La marque/l'étiquette contient [valeur] |
Moins de produits signifient moins de lots et une génération de flux plus rapide. Pour des instructions étape par étape, consultez Comment créer des filtres pour votre flux de produits.
Produits variables et variations
Si vous utilisez des produits variables, considérez :
- Inclure uniquement les variations au prix le plus bas – Une variation par produit au lieu de toutes
- Inclure uniquement la variation par défaut du produit – Réduit davantage le nombre de produits
Ces options se trouvent dans l'onglet Général du flux et peuvent réduire considérablement le nombre de produits traités.
Résumé des considérations de performance
| Facteur | Recommandation pour 10 000+ produits |
|---|---|
| Taille du lot | 200–500 sur hébergement mutualisé ; 500–1000 sur VPS/dédié |
| max_execution_time | 300 secondes ou plus |
| memory_limit | 256 Mo ou plus |
| Méthode de rafraîchissement | Planifié (horaire/journalier) ou cron serveur, pas uniquement manuel |
| Génération HTTP | Désactiver si les flux se bloquent ou expirent |
| Filtres | Exclure les produits en rupture de stock, les catégories non pertinentes ou de faible valeur |
| Produits variables | Utilisez « prix le plus bas » ou « variation par défaut » lorsque cela est approprié |
Dépannage des problèmes courants
| Problème | Solution |
|---|---|
| Flux bloqué en cours de traitement | Réduire la taille du lot ; activer Désactiver la génération de flux HTTP ; vérifier Aide, mon flux ne se met pas à jour ou est bloqué en cours de traitement ! |
| Erreurs de délai d’attente | Augmenter max_execution_time à 300+ ; réduire la taille du lot |
| Erreur fatale / mémoire épuisée | Augmenter memory_limit à 256 Mo+ ; réduire la taille du lot |
| Moins de produits que prévu | Vérifier les filtres et les règles ; voir Aide ! Je n’ai aucun produit ou moins de produits que prévu dans mon flux de produits |
| Échecs d’Action Scheduler | Aller à WooCommerce → Statut → Actions planifiées ; vérifier l’onglet Échec ; augmenter les limites du serveur |
Besoin d'aide supplémentaire ?
Si vous avez besoin d’aide pour optimiser la génération de flux pour votre grand catalogue :
- Utilisateurs Product Feed Elite : Créez un ticket de support pour contacter l'équipe de support AdTribes.
- Utilisateurs Product Feed Pro : Ouvrez un sujet dans le forum WordPress.org.


