Suporte » Plugins » Limitar vendas woocommerce

  • Boa tarde pessoal,

    Eu utilizo o WooCommerce + Membership

    Gostaria de saber se é possível eu limitar as vendas do WooCommerce por cliente.

    Por exemplo:
    Cliente tipo X só pode fazer 2 compras no site por dia
    Cliente tipo Y só pode fazer 5 compras no site por dia

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • Moderador Mario Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Olá, tudo bem?

    É possível sim, mas não encontrei nenhuma solução via plugin.
    Dessa forma, teria que usar algum filtro ou ação para alterar o comportamento do WooCommerce.

    Eu encontrei uma publicação no Stackoverflow que fala uma forma de fazer.

    Não achei 100%, então minha sugestão seria:

    1 – Limitar apenas no fechamento do pedido usando a ação woocommerce_before_checkout_process

    Nessa ação, você pode checar os limties da forma que achar melhor e, em caso de problema, disparar uma exceção, que será convertida em mensagem de erro no checkout:

    throw new Exception( 'Você ultrapassou o limite de compras para hoje' );
    

    2 – Controlar as vendas por dia.

    “Infinitas” formas de fazer isso. Mas pode procurar pelos pedidos “de hoje” do usuário, depois pelos produtos desses pedidos e fazer sua lógica dentro disso.

    Gosto dessa abordagem, principalmente porque é a mais simples.
    Você vai “buscar” as informações necessárias em tempo real, mas se armazenar um “indicador de compras” do produto por usuário (como via meta dado, por exemplo) terá que considerar incrementar e decrementar esse valor de acordo com a mudança de estado dos pedidos…

    Além disso, a proposta também permite “filtrar” por pedidos pagos, pendentes, etc… Não sei se serve para sua regra de negócio, mas pode ser que vá usar.

    Espero ter ajudado.
    Abraços.

    Moderador Mario Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Opa… eu tinha entendido que iria limitar a compra e venda de algum produto específico.

    Vou manter a resposta, porque pode ajudar mais pessoas, mas no seu caso:

    No item 2, só tem uma forma de fazer mesmo: buscar os pedidos do usuário naquele dia e ser feliz.

    Mas você quer controlar também limites individuais, certo? Nesse caso, acho que terá que criar um metadado do usuário mesmo.

    Pode fazer via plugin ou via código. Há vários tutoriais ensinando a criar, inclusive a administração desse dado.

    Abraços

    pat1701

    (@pat1701)

    Bom dia! Configurei o site para vender para todos os países MENOS ESTADOS UNIDOS (vender para todos os países exceto Estados Unidos) e meu cliente recebeu uma compra de lá! Como isso pode acontecer? No campo de áreas de entrega também não consta Estados Unidos! Existe algum outro campo do Woocommerce que tenha que ser preenchido para que realmente essa compra seja bloqueada? Isso é bem grave!
    Aguardo um retorno e agradeço!

    Moderador Mario Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Olá, Pat. Tudo bem?

    Por favor, crie um tópico novo.
    Mas já adianto a pergunta: checou se não tem uma área de entrega geral?
    Nunca utilizei países além do Brasil, então vou dar uma olhada numa instância de teste que eu tenho.

    Att,

    pat1701

    (@pat1701)

    Chequei, ta tudo certo… Me desculpe, achei que tinha criado um novo… Procurei aqui e não descobri como fazer pra criar uma nova psotagem!

    • Esta resposta foi modificada 3 meses atrás por pat1701.
Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • Você deve estar conectado para responder a este tópico.