2017-02-01 7 views
0

Dans ma boutique Sylius, je voudrais rendre accessibles certains produits uniquement aux utilisateurs premium de mon site.Comment rendre certains produits disponibles uniquement aux utilisateurs premium

j'ai réussi à mettre en place une règle de promotion pour les utilisateurs premium, selon la documentation: How to add a custom promotion rule?

Mon problème est que je ne peux pas comprendre comment créer une action de promotion, ce qui rend certains produits disponibles uniquement à la prime utilisateurs. Et ces produits doivent également être vus par les clients standard.

Une action de promotion est-elle un bon moyen d'atteindre cet objectif?

Répondre

2

Je ne sais pas si les promotions sont les meilleures que vous pouvez utiliser dans cette fonctionnalité. Il n'y a pas de réduction/bénéfice pour le client, c'est juste une limitation de produit pour un groupe de clients spécifique. Je résoudre ce avec deux étapes simples:

  1. Ajouter prime $ drapeau entité Product.
  2. Implémenter un écouteur (ou même mieux - un validateur) qui vérifierait les groupes de clients actuellement connectés et s'il n'y a pas de premium, alors cassez l'ajout de produit au panier et affichez le bon message.

Bien sûr, vous pouvez créer une action de promotion qui supprimerait les produits du panier que le client ne peut pas acheter, mais soyons honnêtes, ce serait ridicule)

Laissez-moi savoir s'il est clair ou vous avez besoin de plus d'aide avec ça!

+0

Merci pour votre réponse. Je suis d'accord avec vous, il serait ridicule de retirer les produits du panier. Pour le moment, j'ai déjà un drapeau premium sur l'entité Product et si vous modifiez le template du produit pour désactiver le bouton "Ajouter au panier". Mais la logique de ceci est seulement sur le frontend. Je jetterai un coup d'oeil sur le validateur afin d'obtenir une vérification côté serveur. – Gontran