Eu tenho um tipo específico de regra de carrinho de compras que gostaria de criar. Você pode pensar nisso como um "desconto de variedade"; quanto mais produtos de diferentes categorias o cliente tiver em sua cesta, maior será o desconto do pedido:
Exemplo
Categorias:
Sapatos (3% de desconto)
Casacos (2% de desconto)
Casacos (2% de desconto)
Venda (Isento de desconto)
Acessórios (5% de desconto)
Cenário:
Um cliente adiciona um produto ao carrinho (vazio) da categoria Sapatos no valor de £ 40, isso adiciona 3% de desconto ao total do carrinho, resultando em £ 38,80 (40 - 3%)
Em seguida, um produto da categoria Casacos no valor de £ 200 é adicionado ao carrinho. O desconto total aumenta para 5% para o total do carrinho, resultando em £ 228 (240 - 5%)
Um segundo produto de sapatos é adicionado no valor de £ 30. Como a regra de preço já foi aplicada, o desconto não é afetado, resultando em um total de £ 256,50 (270 - 5%)
Um item de venda é adicionado ao carrinho no valor de £ 10, a um preço reduzido de £ 8. Isso está isento da dedução para os outros produtos, resultando em um total de £ 264,5.
A interface Regra de preço do carrinho de compras permite descontar um valor fixo do carrinho e a alternativa é aplicar um valor percentual aos itens que correspondem às condições definidas.
O cenário descrito acima é possível sem gravar uma extensão personalizada? Se não, alguns conselhos sobre por onde começar seriam apreciados, pois o Magento ainda é um pouco estranho para mim.
Respostas:
As regras de vendas individuais são possíveis, portanto, você pode criar uma regra de carrinho que fornecerá uma porcentagem para qualquer pedido que contenha itens comprados de uma determinada categoria. Você pode criar outras regras para outras categorias. Assim, cada um deles poderia dar cumulativamente, por exemplo, 2% de desconto no pedido.
No entanto, essas regras não estão cientes uma da outra. Portanto, eles não sabem qual é o desconto atual (das outras regras) e não podem ter o 'se' para decidir se um desconto adicional é possível.
Quanto ao desconto específico do produto, você pode fazer um com uma regra ou com um preço especial no produto.
Se você quiser fazer isso com um módulo, o mais fácil é codificar as regras que você deseja. São necessárias algumas outras alterações. Pode ser necessário atualizar modelos (para mostrar seu item de linha extra), alguns xml para o pedido 'totals_sort' - ele continua.
Também acho que sua ideia original de vendas pode ser confusa para os clientes. Às vezes, as regras de gastar X obter Y precisam ser fáceis para as pessoas entenderem.
fonte