Estou fazendo um sistema de adicionar ao carrinho em massa. Observe: eu quero que ele funcione para produtos simples com opções personalizadas -> Onde as opções personalizadas são como cor (vermelho, verde, azul) ou Tamanho (Xl, M, S)
Suponha que uma pessoa queira solicitar os itens abaixo:
product
A,red
cor,qty
12Product
A,green
cor,qty
18Product
BXL
, qtd 3Product
C, quantidade 10
Então, eu quero adicionar esses 4 itens por código / programaticamente de uma só vez. Como posso fazer isso? É possível via string de consulta ou qualquer controlador ou função incorporada para isso? Não precisa ser uma única consulta ou uma chamada de função apenas para ver ...
product
attributes
cart
addtocart
programmatically
user1799722
fonte
fonte
Respostas:
Portanto, para adicionar produtos ao carrinho de forma programática, é bastante simples, basta o objeto do produto e a sessão do carrinho.
Isso ocorre porque é um pouco mais difícil ao adicionar produtos configuráveis ou com opções, mas tudo o que você precisa fazer é carregar o objeto do produto com as opções corretas.
Agora, o que você precisa fazer é passar uma matriz em vez de
$qty
e essa matriz deve ser formatada de maneira diferente, dependendo do tipo de produto que você está adicionando.Consulte o seguinte para obter mais informações:
fonte
Heres um método que eu usei um tempo atrás:
É bem simples e testado agora para estar funcionando.
Incluí 2 produtos
$productArray
, um simples e outro configurável . Obviamente, você pode adicionar mais e, se o configurável tiver duas opções, como tamanho e cor , basta adicionar o adicional na matriz de opções.fonte
Além do fato de que usar produtos simples com opções personalizadas não é praticamente a maneira de usar "tamanho" e "cor" no magento, consegui adicionar produtos com opções personalizadas ao carrinho como este:
É isso que você queria dizer? Se você deseja adicionar vários produtos, basta repetir esse processo para cada produto que deseja adicionar. O fator chave é sempre ter o product_id, qty e opções fornecidas via
$_POST
.fonte
Você pode adicionar vários produtos simples com opções personalizadas substituindo o Cart Controller assim:
Coloquei o arquivo CartController.php aqui: https://github.com/svlega/Multiple-Products-AddtoCart
fonte