Muitos lojistas gostam de ter opções de promoção para o final de ano, mas os itens de frete grátis dentro do Woocommerce são restritos.
Não dá para oferece um determinado valor para determinada cidade com frete gratuito, mas vamos resolver este problema. Vamos dar de presente para o cliente Frete Grátis via PAC dos correios no valor igual ou superior a R$ 300,00 de compra, para pessoas que moram em Capitais.
Primeiro temos que cadastrar uma nova área de entrega dos produtos. Acesse o painel do WP em WooCommerce clique em Configurações. Na página que abre busque nas abas Entrega.
Clique no botão Adicionar área de Entrega
Digite um nome da área para esta nova zona geográfica, selecione Brasil e clique em Limitar para CEPs específicos. Coloque todas as faixas de CEPs das capitais dentro do box que se abre.
Você precisa cadastrar todos os CEPs das capitais. Eu acabei fazendo isso e vou disponibilizar as faixas de CEPs de cada Capital (total do município) aqui, lembrando que coloquei por ordem dos estados: AC, AL, AM , AP , BA , CE , DF 2 linhas, ES , GO , MA , MG , MS , MT , PA , PB , PE , PI , PR , RJ , RN , RO , RR , RS , SC , SE , SP 2 linhas, TO. Veja mais detalhes na página dos correios: http://www.buscacep.correios.com.br/sistemas/buscacep/buscaFaixaCep.cfm
Novo link:
https://buscacepinter.correios.com.br/app/faixa_cep_uf_localidade/index.php
69000001...69099999 57000001...57099999 69900001...69924999 68900001...68914999 40000001...42599999 60000001...61599999 70000001...72799999 73000001...73699999 29000001...29099999 74000001...74899999 65000001...65109999 30000001...31999999 79000001...79129999 78000001...78109999 66000001...66999999 58000001...58099999 50000001...52999999 64000001...64099999 80000001...82999999 20000001...23799999 59000001...59139999 76800001...76849999 69300001...69339999 90000001...91999999 88000001...88099999 49000001...49099999 01000001...05999999 08000000...08499999 77000001...77299999
Feito o cadastro, clique no botão Adicionar método de entrega, e escolha as opções que aparecem. No nosso caso a loja usa PAC, SEDEX e Retirar no Local.
Agora vamos fazer com que o PAC tenha frete grátis para as capitais, mas antes devemos identificar o ID da instância do método de pagamento. Abra o método de pagamento PAC que foi cadastrado a pouco. Verifique no endereço da página qual o numero final da instância. Geralmente a URL é desta forma:
wp-admin/admin.php?page=wc-settings&tab=shipping&instance_id=6
O numero 6 indica que a instância do método de pagamento cadastrado é do PAC. Verifique a sua.
Volte para o início da Área de Entrega e verifique se a Zona cadastrada está em cima de Brasil.
Se caso não estiver, arraste para cima. Para fazer esta operação passe o mouse nos 3 risquinhos na lateral esquerda do item, o ponteiro do mouse muda o formato, assim você consegue arrastar o item para cima e para baixo.
Isso é necessário, pois a primeira verificação deve identificar as capitais e depois o resto das cidades do Brasil. (Se caso não tenha cadastrado o Item Brasil, cadastre e selecione apenas Brasil na “Regiões da área” e os métodos de pagamentos)
Agora vamos colocar o código para fazer uma verificação e mostrar o Frete Grátis. Abra o functions.php de seu tema para podermos incluir um trecho de código.
/************************************************************************************** FRETE GRÁTIS VIA PAC ACIMA DE R$300,00 PARA CAPITAIS APENAS hospedagemwordpresspro.com.br **************************************************************************************/ function custom_woocommerce_correios_shipping_methods( $rate, $instance_id ) { // Altere aqui o numero da instância cadastrada. if ( 6 == $instance_id ) { // Verifica se o total é maior ou igual a 300 reais. if ( isset( WC()->cart->subtotal ) && 300 <= WC()->cart->subtotal ) { $rate['cost'] = 0; } } return $rate; } add_filter( 'woocommerce_correios_correios-pac_rate', 'custom_woocommerce_correios_shipping_methods', 10, 2 );
Se caso sua instância for outro número, no código, altere o numero 6 para o numero do seu cadastro.
No nosso exemplo, ele verifica o total do carrinho de compras, se é igual ou maior que 300 reais. Caso você queira um valor diferente, altere o valor 300 para o numero que você gostaria de dar o frete grátis.
Feito isso teste seu carrinho de compras colocando CEPs de Capitais e outras cidades e modifique os valores de compra, para identificar se esta funcionando tudo corretamente.
Espero que este tutorial tenha ajudado a resolver este problema, e boas vendas!
Olá
Boa tarde
Tudo bem?
Já comprei alguns plugins seus.
Tem como a taxa fixa eu definir um valor mínimo de compra?
Estou tentando de tudo e não acho uma solução.
Olá Jonas
Para definir apenas um valor mínimo de compra, você pode usar um plugin no WordPress. Procure nos plugins do WP por “woocommerce minimum order”. Tem alguns bem interessantes que vão te ajudar.
Boa sorte!
Help: como colocar taxa fixa de acordo com o valor? Tipo: até 1000,00: 6%, de 1.001,00 até 10.000,00 3% e acima de 10.000,00 frete grátis. Alguma luz?
Olá,
tenho um website com uma área de envio definido, gostaria de cobrar uma valor para compras abaixo de 100 e outro para compras acima de 100. Daria para usar este método acima?
Como eu faria?
Olá Sergio
Você pode criar dois verificadores
// Verifica se o total é menor ou igual a 100 reais.
if ( isset( WC()->cart->subtotal ) && 100 >= WC()->cart->subtotal ) {
// -- Regra do negócio --
}
// Verifica se o total é maior ou igual a 101 reais.
else ( isset( WC()->cart->subtotal ) && 101 <= WC()->cart->subtotal ) {
// -- Regra do negócio --
}
Olá Sergio, estou com dificuldades para encontrar as variaveis que utilizaria pra resolver esse exato problema no meu site, como eu chamaria as taxas fixas, por exemplo: if (cart = 101) = administrado pelos correios;
Espero que consiga me ajudar obrigado
errei o nome desculpa
Olá Miguel
Eu não entendi muito bem o que vc precisa.
Mas o plugin dos correios teve modificações, se a função é a mesma, você pega este dado pelo número da instância que você configurou lá no Woocommerce “Área de entrega”, no exemplo, eu busquei o PAC, mas vc pode cadastrar “taxa fixa” e verificar o número da instância que fica na URL.