Vous avez configuré les ventes croisées WooCommerce (cross-sells) sur vos produits et ils n’apparaissent nulle part. Ce n’est presque jamais un bug : WooCommerce les affiche à un seul endroit et seulement si plusieurs conditions sont remplies. Pour rédiger ce guide, nous avons examiné le code de WooCommerce 10.8 et nous l’avons testé sur une boutique de démonstration, avec le panier et le paiement en blocs ainsi qu’avec les versions classiques.
Vous verrez d’abord où ils devraient apparaître, puis les huit causes habituelles avec leur solution, et enfin comment amener ces mêmes ventes croisées au checkout, là où WooCommerce ne les affiche jamais.
Où WooCommerce affiche les ventes croisées
Les ventes croisées se configurent sur chaque produit : dans la boîte « Données produit », onglet « Produits liés », champ « Ventes croisées ». Ce que vous y mettez est suggéré lorsque ce produit est dans le panier.
Et elles s’affichent uniquement sur la page du panier :
- Panier classique (celui du shortcode
) : sous le tableau des produits, avec le titre « Vous serez peut-être intéressé par… ». Il en affiche deux, choisis au hasard parmi tous ceux concernés. - Panier en blocs (celui installé par défaut dans les nouvelles boutiques depuis WooCommerce 8.3) : sous les produits, dans une section « Ça peut vous intéresser… » avec jusqu’à trois.
Elles n’apparaissent pas sur la fiche produit (là, ce sont les « produits suggérés », les upsells), ni dans le mini-panier, ni au checkout. Ne confondez pas non plus les ventes croisées avec les « Produits similaires » affichés sous la fiche : ceux-là sont choisis automatiquement par WooCommerce, selon la catégorie et les étiquettes. Si vous hésitez sur ce qui est quoi, nous l’expliquons dans order bump, upsell et cross-sell.
8 causes pour lesquelles elles n’apparaissent pas
1. Vous les cherchez là où WooCommerce ne les affiche pas
C’est la cause la plus fréquente. Si vous vous attendez à les voir sur la fiche produit, dans le tiroir du mini-panier ou sur la page de paiement, elles n’y seront pas. Ajoutez au panier un produit qui a des ventes croisées et ouvrez la page du panier.
2. Elles sont sur le mauvais produit
Les ventes croisées se placent sur le produit que le client ajoute au panier, pas sur celui que vous voulez suggérer. Si vous voulez que l’achat d’un appareil photo suggère une carte mémoire, la carte doit être dans le champ « Ventes croisées » de l’appareil photo.
Vérifiez aussi le champ : « Produits suggérés » et « Ventes croisées » sont l’un au-dessus de l’autre, et il est facile de remplir le mauvais.
3. Le produit suggéré est déjà dans le panier
WooCommerce retire des suggestions tout ce qui est déjà dans le panier, y compris les variations. Si vous testez avec un panier qui contient déjà la carte mémoire, il ne la suggérera pas. Nous l’avons vérifié : avec deux produits dans le panier qui se suggèrent mutuellement, aucun n’apparaît comme vente croisée.
4. Le produit suggéré n’est pas visible
Seuls les produits visibles dans la boutique sont suggérés. Sont exclus ceux qui :
- sont en brouillon, en attente ou privés ;
- ont la « Visibilité du catalogue » sur « Masqué » (dans la boîte « Publier » de la fiche). Nous l’avons testé : en masquant l’un des trois produits suggérés, le panier n’a affiché que les deux autres ;
- ont la visibilité sur « Résultats de recherche uniquement » ;
- sont en rupture de stock et que vous avez coché l’option « Masquer les produits en rupture de stock du catalogue », dans WooCommerce → Réglages → Produits → Inventaire.
5. Votre page de panier n’a pas d’endroit pour les afficher
Dans le panier en blocs, les ventes croisées sont un bloc de plus dans la page. Si quelqu’un l’a supprimé, elles n’apparaissent pas. Ouvrez Pages → Panier dans l’éditeur et cherchez, sous les produits du panier, un bloc « Collection de produits » avec la collection « Ventes croisées » (dans les boutiques plus anciennes, il s’appelle « Ventes croisées dans le panier »). S’il n’est pas là, ajoutez-le.
Si votre panier est construit avec un page builder (Elementor, Bricks, Divi…), le modèle du panier doit inclure l’élément de ventes croisées de ce builder. S’il ne l’a pas, WooCommerce n’a nulle part où les afficher.
6. Un thème, un plugin ou un extrait de code les a supprimées
Dans le panier classique, WooCommerce les affiche en accrochant la fonction woocommerce_cross_sell_display au hook woocommerce_cart_collaterals. Beaucoup de thèmes la retirent ou la déplacent, et c’est un extrait très répandu dans les tutoriels pour « nettoyer » le panier. Cherchez dans le functions.php de votre thème enfant et dans votre plugin d’extraits de code toute ligne contenant woocommerce_cross_sell_display ou le filtre woocommerce_cart_crosssell_ids.
Si vous ne trouvez rien, essayez sur une copie du site (jamais sur la boutique en production) d’activer un thème par défaut comme Storefront ou Twenty Twenty-Five. Si elles apparaissent avec celui-ci, le coupable est votre thème.
7. Vos clients ne passent pas par le panier
Si la plupart de vos clients vont directement au paiement (avec le bouton « Validation de commande » du mini-panier, avec un bouton « Acheter maintenant » ou parce que la boutique redirige vers le checkout après l’ajout d’un produit), les ventes croisées peuvent être correctement configurées et pourtant presque personne ne les verra. Ici, il n’y a rien à corriger dans la configuration : le problème est l’emplacement. Nous le voyons dans la dernière section.
8. Elles s’affichent en moins grand nombre que prévu
Si vous avez mis six ventes croisées et que vous n’en voyez que deux, ce n’est pas un bug : le panier classique en affiche deux au hasard et le panier en blocs, trois. Si vous en voulez plus, continuez à lire.
Comment en afficher plus de deux
Dans le panier classique, avec deux filtres WooCommerce. Ajoutez ceci avec un plugin d’extraits de code ou dans le functions.php de votre thème enfant :
// Affiche jusqu’à 4 ventes croisées dans le panier classique, en 4 colonnes.
add_filter( 'woocommerce_cross_sells_total', function () { return 4; } );
add_filter( 'woocommerce_cross_sells_columns', function () { return 4; } );
L’ordre est aléatoire par défaut. Si vous préférez un autre ordre, le filtre woocommerce_cross_sells_orderby accepte, par exemple, price ou menu_order.
Dans le panier en blocs, aucun code n’est nécessaire : ouvrez la page du panier dans l’éditeur, sélectionnez le bloc de ventes croisées et modifiez le nombre de produits et de colonnes dans son panneau de réglages.
Pourquoi elles n’apparaissent pas au checkout (et comment les y amener)
Même si tout est correctement configuré, vous ne verrez pas les ventes croisées sur la page de paiement. Ce n’est pas un oubli : la fonction qui les affiche dans le panier classique s’arrête dès qu’elle détecte qu’elle est sur le checkout, et le checkout en blocs n’inclut aucun bloc de ventes croisées. Lors de notre test, le même panier qui affichait trois suggestions n’en a montré aucune au passage au checkout, ni dans la version en blocs ni dans la version classique.
Les forcer par code n’est pas une bonne idée non plus. Les ventes croisées sont pensées pour le panier : leur bouton « Ajouter au panier » n’est pas conçu pour mettre à jour le total du checkout sans recharger la page, et un rechargement sur la page de paiement peut effacer l’adresse et les données déjà saisies par le client.
Ce qui fonctionne au checkout, c’est un order bump : une offre que le client ajoute en cochant une case, qui met à jour le total sans toucher au formulaire. C’est la façon d’afficher vos compléments aussi aux clients qui sautent le panier (cause 7), et au moment où ils ont déjà décidé d’acheter. Nous l’expliquons dans qu’est-ce qu’un order bump et comment l’utiliser dans WooCommerce.
Amenez vos ventes croisées au checkout
Avec EHERO Woo Checkout Offers (c’est le nôtre), vous choisissez les produits que vous voulez proposer au checkout, vous leur attribuez un prix spécial et vous les affichez seulement lorsque le panier contient certains produits ou catégories, comme une vente croisée mais au moment du paiement. Sans recharger la page, dans le checkout classique et en blocs, ainsi que dans le panier et le mini-panier. Une licence par domaine, 79,99 € par an.
Questions fréquentes
Quelle est la différence entre ventes croisées et produits suggérés dans WooCommerce ?
Les produits suggérés (upsells) proposent une meilleure alternative et s’affichent sur la fiche produit. Les ventes croisées (cross-sells) suggèrent des compléments et s’affichent dans le panier.
Pourquoi n’ai-je que deux ventes croisées ?
Parce que le panier classique en affiche deux au hasard. Vous pouvez augmenter ce nombre avec le filtre woocommerce_cross_sells_total. Dans le panier en blocs, elles s’affichent jusqu’à trois et cela se modifie depuis l’éditeur.
Puis-je afficher les ventes croisées sur la fiche produit ?
Dans les thèmes en blocs, oui : le bloc « Collection de produits » dispose d’une collection de ventes croisées que vous pouvez placer dans le modèle de produit de l’éditeur du site. Dans les thèmes classiques, il faut du code ou un plugin.
Les ventes croisées apparaissent-elles dans le mini-panier ?
Non. Ni dans le mini-panier classique ni dans celui en blocs.
Peut-on appliquer une remise aux ventes croisées ?
Pas nativement : elles s’affichent à leur prix normal, ou au prix remisé si le produit en a un. Pour un prix qui n’existe que lorsqu’il est acheté avec un autre produit, il faut un plugin, comme un order bump.
Le cache affecte-t-il les ventes croisées ?
Il ne devrait pas : la page du panier n’est pas mise en cache, car elle change pour chaque client. Si votre plugin de cache la met en cache, vous avez d’autres problèmes plus graves que les ventes croisées, donc excluez-la.
Conclusion
Si vos ventes croisées WooCommerce ne s’affichent pas, vérifiez dans cet ordre : que vous les cherchez dans le panier, qu’ils sont sur le produit ajouté au panier, que le produit suggéré n’est pas déjà dans le panier et qu’il est visible, que votre page de panier a un emplacement pour les afficher et qu’aucun thème ou extrait ne les a supprimés. Et si vos clients vont directement au paiement, ne vous focalisez pas sur le panier : amenez ces mêmes suggestions au checkout avec un order bump.
Guides liés
- Qu’est-ce qu’un order bump et comment l’utiliser dans WooCommerce : exemples, règles et éléments à mesurer.
- Order bump, upsell et cross-sell : ce qu’est chaque technique et quand l’utiliser.
- EHERO Woo Checkout Offers : l’order bump pour WooCommerce avec prix spécial, limite d’unités et statistiques.



