{"id":200895,"date":"2024-09-05T21:37:01","date_gmt":"2024-09-05T21:37:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/autocep\/"},"modified":"2026-10-11T16:46:49","modified_gmt":"2026-10-11T16:46:49","slug":"autocep","status":"publish","type":"plugin","link":"https:\/\/so.wordpress.org\/plugins\/autocep\/","author":23103365,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.48","stable_tag":"trunk","tested":"7.1.3","requires":"5.0","requires_php":"7.4","requires_plugins":null,"header_name":"AutoCEP","header_author":"TESW | Dev Wanderson Cesar","header_description":"Preenche automaticamente o endere\u00e7o no checkout com base no CEP digitado.","assets_banners_color":"357c9b","last_updated":"2026-10-11 16:46:49","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/tesw.com.br\/","header_plugin_uri":"https:\/\/tesw.com.br\/plugins\/","header_author_uri":"https:\/\/tesw.com.br","rating":5,"author_block_rating":0,"active_installs":1000,"downloads":9011,"num_ratings":6,"support_threads":2,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.35":{"tag":"2.35","author":"wanderson100","date":"2026-08-17 05:26:38","revision":3650475}},"upgrade_notice":{"2.48":"<p>Vers\u00e3o grande: Checkout Moderno em etapas, tabela de frete, pagamento na entrega, sugest\u00f5es de endere\u00e7o, funil de convers\u00e3o e corre\u00e7\u00f5es. Fa\u00e7a backup antes de atualizar e desative o MSPW Pro, se usar (o AutoCEP j\u00e1 inclui essas fun\u00e7\u00f5es).<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":6},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3684206,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3684206,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3684206,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3684206,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.35"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3684253,"resolution":"1","location":"assets","locale":"","width":1708,"height":876},"screenshot-10.png":{"filename":"screenshot-10.png","revision":3652006,"resolution":"10","location":"assets","locale":"","width":1366,"height":768},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3684253,"resolution":"2","location":"assets","locale":"","width":1920,"height":935},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3684253,"resolution":"3","location":"assets","locale":"","width":1708,"height":944},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3684315,"resolution":"4","location":"assets","locale":"","width":1726,"height":925},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3684253,"resolution":"5","location":"assets","locale":"","width":1725,"height":918},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3684253,"resolution":"6","location":"assets","locale":"","width":1729,"height":927},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3684315,"resolution":"7","location":"assets","locale":"","width":1711,"height":929},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3684253,"resolution":"8","location":"assets","locale":"","width":1710,"height":913},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3652006,"resolution":"9","location":"assets","locale":"","width":1366,"height":768}},"screenshots":{"1":"Frete e Busca de CEP \u2014 autocompletar no checkout e prioridade das APIs de CEP.","2":"Simulador de Frete na P\u00e1gina de Produto.","3":"Simulador de Frete no Carrinho.","4":"Simulador de Frete no Checkout.","5":"Retirada em Loja \u2014 testes e diagn\u00f3stico da API do Google Maps.","6":"Integra\u00e7\u00f5es de Frete \u2014 testes de conex\u00e3o com Melhor Envio e Frenet.","7":"Personaliza\u00e7\u00e3o Visual na aba Apar\u00eancia.","8":"Dashboard Analytics de Frete.","9":"Simulador de frete no carrinho com as op\u00e7\u00f5es de retirada e frete gr\u00e1tis.","10":"Endere\u00e7o preenchido automaticamente pelo CEP no checkout."}},"plugin_section":[],"plugin_tags":[157502,175503,27037,44084,240966],"plugin_category":[45],"plugin_contributors":[279499],"plugin_business_model":[],"class_list":["post-200895","plugin","type-plugin","status-publish","hentry","plugin_tags-cep","plugin_tags-checkout-woocommerce","plugin_tags-correios","plugin_tags-frete","plugin_tags-melhor-envio","plugin_category-ecommerce","plugin_contributors-wanderson100","plugin_committers-wanderson100"],"banners":{"banner":"https:\/\/ps.w.org\/autocep\/assets\/banner-772x250.png?rev=3684206","banner_2x":"https:\/\/ps.w.org\/autocep\/assets\/banner-1544x500.png?rev=3684206","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/autocep\/assets\/icon-128x128.png?rev=3684206","icon_2x":"https:\/\/ps.w.org\/autocep\/assets\/icon-256x256.png?rev=3684206","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-1.png?rev=3684253","caption":"Frete e Busca de CEP \u2014 autocompletar no checkout e prioridade das APIs de CEP."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-2.png?rev=3684253","caption":"Simulador de Frete na P\u00e1gina de Produto."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-3.png?rev=3684253","caption":"Simulador de Frete no Carrinho."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-4.png?rev=3684315","caption":"Simulador de Frete no Checkout."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-5.png?rev=3684253","caption":"Retirada em Loja \u2014 testes e diagn\u00f3stico da API do Google Maps."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-6.png?rev=3684253","caption":"Integra\u00e7\u00f5es de Frete \u2014 testes de conex\u00e3o com Melhor Envio e Frenet."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-7.png?rev=3684315","caption":"Personaliza\u00e7\u00e3o Visual na aba Apar\u00eancia."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-8.png?rev=3684253","caption":"Dashboard Analytics de Frete."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-9.png?rev=3652006","caption":"Simulador de frete no carrinho com as op\u00e7\u00f5es de retirada e frete gr\u00e1tis."},{"src":"https:\/\/ps.w.org\/autocep\/assets\/screenshot-10.png?rev=3652006","caption":"Endere\u00e7o preenchido automaticamente pelo CEP no checkout."}],"raw_content":"<!--section=description-->\n<h3>O melhor plugin de CEP e frete do Brasil \u2014 completo e 100% gratuito<\/h3>\n\n<p>O <strong>AutoCEP<\/strong> transforma a log\u00edstica da sua loja WooCommerce: autocompleta o endere\u00e7o do cliente ao digitar o CEP e simula o frete em tempo real \u2014 na p\u00e1gina do produto, no carrinho e no checkout \u2014 eliminando as duas maiores causas de abandono de carrinho no e-commerce brasileiro: o atrito de preencher um formul\u00e1rio longo e a incerteza do valor do frete antes da decis\u00e3o de compra.<\/p>\n\n<p>Desenvolvido pela equipe de engenharia da TESW, em parceria estrat\u00e9gica com a Ritmo Digital, todos os m\u00f3dulos \u2014 tabela de frete pr\u00f3pria por CEP e peso, frete por Km, Growth Marketing (previs\u00e3o de entrega e barra de frete gr\u00e1tis), retirada em loja por proximidade, personaliza\u00e7\u00e3o visual completa e o dashboard de Analytics \u2014 v\u00eam desbloqueados desde a instala\u00e7\u00e3o, sem cobran\u00e7a de mensalidade, sem vers\u00e3o \"Pro\" e sem recursos limitados atr\u00e1s de upgrade.<\/p>\n\n<h3>Novidades da vers\u00e3o 2.48<\/h3>\n\n<ul>\n<li><strong>Tabela de Frete por CEP e Peso (novo m\u00e9todo de envio)<\/strong>: cadastre sua pr\u00f3pria planilha de frete \u2014 cole as linhas direto do Excel\/Google Planilhas ou importe um arquivo CSV. V\u00e1rias op\u00e7\u00f5es por CEP (ex.: Econ\u00f4mico e Expresso), prazo em dias \u00fateis integrado \u00e0 previs\u00e3o de entrega e taxa adicional opcional. Ao salvar, a Zona de Entrega \u00e9 limitada sozinha \u00e0s faixas de CEP da tabela e posicionada na ordem certa.<\/li>\n<li><strong>Checkout Moderno em 3 etapas (novo)<\/strong>: transforma o checkout cl\u00e1ssico em Identifica\u00e7\u00e3o \u2192 Entrega \u2192 Pagamento, com resumo do pedido sempre vis\u00edvel, valida\u00e7\u00e3o a cada etapa, modo compacto e layout que se adapta \u00e0 forma de pagamento (Pix, cart\u00e3o ou boleto). Na p\u00e1gina de pedido recebido, destaca o QR Code Pix com bot\u00e3o \"Copiar c\u00f3digo Pix\".<\/li>\n<li><strong>Analytics do Checkout (funil de convers\u00e3o)<\/strong>: na aba Analytics, veja a taxa de convers\u00e3o do checkout, onde os clientes desistem (entrada \u2192 entrega \u2192 pagamento \u2192 finalizar \u2192 pedido), receita e ticket m\u00e9dio, tempo m\u00e9dio at\u00e9 o pedido, convers\u00e3o por forma de pagamento (Pix, cart\u00e3o, boleto) e por aparelho (celular x computador) e os campos que mais travam os clientes. An\u00f4nimo: nenhum nome, e-mail ou endere\u00e7o \u00e9 gravado.<\/li>\n<li><strong>Sugest\u00f5es de endere\u00e7o ao digitar<\/strong>: enquanto o cliente digita a rua, aparece uma lista de ruas reais (ex.: \"Av Paulista\" \u2192 \"Avenida Paulista (at\u00e9 610 - lado par) \u2014 Bela Vista, S\u00e3o Paulo\/SP \u00b7 CEP 01310-000\"); ao escolher, preenche rua, bairro, cidade, estado e o CEP. Gr\u00e1tis pelo ViaCEP (com cidade e estado) ou pelo Google Maps, se a loja tiver chave.<\/li>\n<li><strong>Autocompletar no Checkout em Blocos<\/strong>: o endere\u00e7o agora \u00e9 preenchido tamb\u00e9m no novo checkout em blocos do WooCommerce (padr\u00e3o nas lojas novas).<\/li>\n<li><strong>Compat\u00edvel com HPOS e WooCommerce 11<\/strong>: fim do aviso \"1 plugin incompat\u00edvel detectado (AutoCEP)\" \u2014 pode manter o armazenamento de pedidos de alto desempenho ativado.<\/li>\n<li><strong>Mais r\u00e1pido quando uma API cai<\/strong>: a API de CEP ou o Google Maps que ficar lento\/fora do ar entra em pausa autom\u00e1tica e a pr\u00f3xima alternativa assume na hora \u2014 sem o cliente ficar esperando o \"carregando\".<\/li>\n<li><strong>Sem zoom no iPhone\/iPad<\/strong>: o campo de CEP n\u00e3o amplia mais a p\u00e1gina ao ser tocado, e campo e bot\u00e3o ficaram maiores no celular.<\/li>\n<li><strong>Corre\u00e7\u00f5es<\/strong>: t\u00edtulo em branco e janela de configura\u00e7\u00e3o vazia nos m\u00e9todos de envio do AutoCEP; \"CEP n\u00e3o encontrado\" indevido quando uma API bloqueava o servidor; consulta \u00e0 ApiCEP corrigida.<\/li>\n<\/ul>\n\n<h3>Assista ao V\u00eddeo de Apresenta\u00e7\u00e3o e Demonstra\u00e7\u00e3o<\/h3>\n\n<p>https:\/\/youtu.be\/EkEC8CJ_H5c<\/p>\n\n<h3>Documenta\u00e7\u00e3o Oficial do Plugin<\/h3>\n\n<p>Guia completo de instala\u00e7\u00e3o, configura\u00e7\u00e3o de cada aba, integra\u00e7\u00e3o com transportadoras e personaliza\u00e7\u00e3o visual: <a href=\"https:\/\/tesw.com.br\/documentacao-autocep\">tesw.com.br\/documentacao-autocep<\/a><\/p>\n\n<h3>Por que instalar o AutoCEP<\/h3>\n\n<ul>\n<li><strong>Painel de Lat\u00eancia em Tempo Real (ms) e Prioridade de APIs<\/strong>: o AutoCEP consulta ViaCEP, BrasilAPI e ApiCEP. Na aba \"Frete e Busca de CEP\", o bot\u00e3o \"Testar CEP Agora\" mede a lat\u00eancia de cada provedor em milissegundos, para voc\u00ea definir a ordem de prioridade (1\u00aa, 2\u00aa, 3\u00aa escolha). Se uma API oscilar, a pr\u00f3xima assume automaticamente em cascata.<\/li>\n<li><strong>100% gratuito de verdade<\/strong>: tabela de frete, frete por Km, simulador de produto, Growth Marketing, previs\u00e3o de entrega, personaliza\u00e7\u00e3o visual e dashboard de Analytics v\u00eam todos desbloqueados, sem custo.<\/li>\n<li><strong>Zero diverg\u00eancia de valores<\/strong>: o simulador n\u00e3o inventa estimativas \u2014 ele l\u00ea as Zonas de Entrega reais do seu WooCommerce (transportadoras, frete fixo, frete gr\u00e1tis ou a Tabela de Frete do pr\u00f3prio AutoCEP). O valor simulado \u00e9 o mesmo cobrado no checkout.<\/li>\n<li><strong>Fallback autom\u00e1tico para o Google Maps<\/strong>: no c\u00e1lculo de frete por Km e na retirada por proximidade, se a Distance Matrix API do Google sofrer timeout ou instabilidade, o plugin recalcula por estimativa (linha reta \u00d7 1.3), sem deixar de mostrar uma op\u00e7\u00e3o de frete ao cliente.<\/li>\n<li><strong>Navega\u00e7\u00e3o \u00e1gil com submenus dedicados<\/strong>: atalhos diretos com \u00edcones pr\u00f3prios para Vis\u00e3o Geral, Analytics, Growth Marketing, Retirada em Loja, Integra\u00e7\u00f5es de Frete, Suporte T\u00e9cnico e Diagn\u00f3stico.<\/li>\n<li><strong>Suporte integrado ao painel<\/strong>: abra chamados direto do WordPress, com n\u00famero sequencial (ex.: AC-000123) e bot\u00f5es de contato r\u00e1pido (e-mail e WhatsApp) que j\u00e1 carregam uma mensagem pronta com o site e a vers\u00e3o do plugin.<\/li>\n<li><strong>Cache duplo de alta performance<\/strong>: Cache de CEPs (dias configur\u00e1veis) e Cache de Cota\u00e7\u00f5es de Frete (horas configur\u00e1veis), deixando simula\u00e7\u00f5es repetidas quase instant\u00e2neas e reduzindo chamadas a APIs de transportadoras como Melhor Envio e Frenet.<\/li>\n<li><strong>Pausa autom\u00e1tica de APIs lentas<\/strong>: se uma API de CEP ou o Google Maps n\u00e3o responder, ela \u00e9 pulada por alguns minutos e a pr\u00f3xima alternativa assume \u2014 s\u00f3 o primeiro cliente sente a demora, nunca a loja inteira.<\/li>\n<li><strong>Sele\u00e7\u00e3o real no checkout e no carrinho<\/strong>: clicar em \"Selecionar\" aplica de verdade aquele m\u00e9todo \u00e0 sess\u00e3o do WooCommerce, sempre revalidado no servidor antes de ser aplicado.<\/li>\n<li><strong>Compatibilidade universal com CSS de prioridade garantida<\/strong>: funciona com o checkout cl\u00e1ssico e o Checkout em Blocos do WooCommerce, Fluid Checkout, CartFlows e Elementor Pro \u2014 as cores e tipografia configuradas no painel sobrep\u00f5em at\u00e9 temas com estilos globais agressivos.<\/li>\n<\/ul>\n\n<h3>Funcionalidades Inclu\u00eddas (Todas Gratuitas)<\/h3>\n\n<ul>\n<li><strong>Autocompletar de Endere\u00e7o Inteligente<\/strong>: preenchimento autom\u00e1tico de Rua, Bairro, Cidade e Estado (Cobran\u00e7a e Entrega) no checkout cl\u00e1ssico e no Checkout em Blocos, foco autom\u00e1tico no campo \"N\u00famero\", detec\u00e7\u00e3o dos campos de bairro mais comuns (<code>billing_neighborhood<\/code>, <code>billing_bairro<\/code>, <code>billing_district<\/code>) e aviso para CEPs sem rua espec\u00edfica cadastrada.<\/li>\n<li><strong>Checkout Moderno (Multietapas) e Gerenciador de Campos<\/strong>: checkout cl\u00e1ssico dividido em Identifica\u00e7\u00e3o, Entrega e Pagamento, com campos extras e campos padr\u00e3o que voc\u00ea esconde ou torna obrigat\u00f3rios pelo painel, com barra de progresso, resumo do pedido fixo (recolh\u00edvel no celular), valida\u00e7\u00e3o de e-mail, telefone e CEP a cada etapa, escolha de frete em cart\u00f5es, modo compacto (campos opcionais atr\u00e1s de \"+ adicionar\") e mensagens por forma de pagamento (Pix, cart\u00e3o, boleto) detectadas automaticamente nos gateways brasileiros. Usa os campos originais do WooCommerce, ent\u00e3o gateways, plugins de CPF\/CNPJ e o autocompletar de CEP continuam funcionando. Mobile-first e compat\u00edvel com Astra, Hello Elementor, GeneratePress e outros temas.<\/li>\n<li><strong>Sugest\u00f5es de Endere\u00e7o ao Digitar<\/strong>: lista de ruas reais no campo Endere\u00e7o, com o trecho de numera\u00e7\u00e3o de ruas longas, entendendo abrevia\u00e7\u00f5es (Av, R., Al., Dr., Prof.\u2026) e sem CEPs de grandes usu\u00e1rios\/caixas postais. Ao escolher, preenche rua, bairro, cidade, estado e o CEP \u2014 ideal para quem n\u00e3o sabe o CEP. Gr\u00e1tis via ViaCEP (precisa de cidade e estado) ou via Google Places (opcional, com a chave da loja, consultado pelo servidor). Funciona com teclado (setas, Enter, Esc) e toque.<\/li>\n<li><strong>Tabela de Frete por CEP e Peso<\/strong>: m\u00e9todo de envio pr\u00f3prio em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Entrega. Cole a planilha do Excel\/Google Planilhas ou importe um CSV com as colunas <code>cep_inicial; cep_final; peso_min; peso_max; valor; prazo; nome<\/code>. V\u00e1rias op\u00e7\u00f5es de frete por CEP, prazo integrado \u00e0 previs\u00e3o de entrega, taxa adicional, aviso de linhas com erro e limita\u00e7\u00e3o autom\u00e1tica da Zona de Entrega \u00e0s faixas de CEP da tabela. Calculada no pr\u00f3prio servidor da loja, sem depender de nenhuma API externa.<\/li>\n<li><strong>Simuladores de Frete (Produto, Carrinho e Checkout)<\/strong>: cota\u00e7\u00e3o na p\u00e1gina do produto (considerando quantidade e varia\u00e7\u00e3o), no carrinho (somando os itens) e no checkout (c\u00e1lculo r\u00e1pido por CEP). Pode ser posicionado manualmente com o shortcode <code>[shipping_calculator_on_product_page]<\/code>, e desliga automaticamente a caixa nativa do Melhor Envio para n\u00e3o duplicar campos.<\/li>\n<li><strong>Growth Marketing \u2014 Previs\u00e3o de Entrega e Frete Gr\u00e1tis Din\u00e2mico<\/strong>: datas estimadas de entrega (ex.: \"Chega entre Quarta-feira (25\/10) e Sexta-feira (27\/10)\"), com op\u00e7\u00e3o de contar s\u00f3 dias \u00fateis, e Barra de Progresso de Frete Gr\u00e1tis com a tag din\u00e2mica <code>{missing}<\/code> (ex.: \"Faltam {missing} para voc\u00ea ganhar Frete Gr\u00e1tis!\"), detectando automaticamente as regras de frete gr\u00e1tis j\u00e1 configuradas no WooCommerce.<\/li>\n<li><strong>Retirada em Loja por Proximidade e Frete por Km (Google Maps)<\/strong>: c\u00e1lculo de dist\u00e2ncia rodovi\u00e1ria real com f\u00f3rmula de Taxa Fixa + (Km \u00d7 Valor por Km), raio e valor m\u00ednimo configur\u00e1veis, e testes integrados de Status R\u00e1pido da API e Diagn\u00f3stico Detalhado de dist\u00e2ncia entre dois CEPs.<\/li>\n<li><strong>Integra\u00e7\u00f5es de Frete<\/strong>: testes de conex\u00e3o em tempo real com as APIs do Melhor Envio e da Frenet \u2014 o token \u00e9 detectado automaticamente a partir do que j\u00e1 est\u00e1 salvo nos plugins oficiais de cada transportadora (nenhum campo para preencher), confirmando se ele \u00e9 v\u00e1lido e se a API est\u00e1 no ar, sem precisar simular um pedido completo.<\/li>\n<li><strong>Personaliza\u00e7\u00e3o Visual Completa<\/strong>: cor de fundo, borda e texto da caixa e do bot\u00e3o, arredondamento (nenhum\/pequeno\/m\u00e9dio\/grande), tipografia (tamanho e peso da fonte) e espa\u00e7amento (compacto\/normal\/espa\u00e7oso), incluindo cores pr\u00f3prias para a barra de frete gr\u00e1tis em progresso e ao ser conquistada.<\/li>\n<li><strong>Pagamento na Entrega<\/strong>: dinheiro com troco, Pix, d\u00e9bito, cr\u00e9dito ou vale na entrega, liberado s\u00f3 para os fretes que voc\u00ea escolher (ex.: Motoboy e Retirada), com a forma e o troco no pedido e nos e-mails.<\/li>\n<li><strong>P\u00f3s-Compra \u2014 Status do Pedido e P\u00e1gina de Obrigado<\/strong>: mensagem em tempo real quando o pagamento \u00e9 aprovado (ou falha, \u00e9 cancelado...), na p\u00e1gina de pedido recebido, e redirecionamento opcional para a sua p\u00e1gina de agradecimento depois da aprova\u00e7\u00e3o.<\/li>\n<li><strong>Analytics \u2014 Funil do Checkout<\/strong>: taxa de convers\u00e3o e desist\u00eancia do checkout etapa por etapa, receita e ticket m\u00e9dio, tempo m\u00e9dio at\u00e9 o pedido, convers\u00e3o por forma de pagamento e por aparelho, e ranking dos campos que mais geram erro \u2014 dados an\u00f4nimos, com filtro de 7\/30\/90 dias.<\/li>\n<li><strong>Analytics \u2014 Intelig\u00eancia de Frete<\/strong>: frete m\u00e9dio calculado vs. pago, taxa de convers\u00e3o vs. desist\u00eancia, ranking dos CEPs e estados que mais geram cota\u00e7\u00f5es, e os m\u00e9todos de frete mais escolhidos nos pedidos.<\/li>\n<li><strong>Diagn\u00f3stico e Detec\u00e7\u00e3o de Produtos sem Peso<\/strong>: hist\u00f3rico de falhas e timeouts de transportadoras. Quando um m\u00e9todo habilitado na zona n\u00e3o retorna taxa, o plugin aponta produtos sem peso\/dimens\u00f5es cadastrados (Produtos &gt; Editar Produto &gt; Entrega) como causa prov\u00e1vel \u2014 comum em transportadoras privadas via API (ex.: Jadlog, Azul Ecommerce), que costumam exigir esse dado para cotar, diferente dos Correios.<\/li>\n<\/ul>\n\n<h3>Seguran\u00e7a e Padr\u00f5es de Engenharia<\/h3>\n\n<ul>\n<li><strong>Nonces em toda a\u00e7\u00e3o AJAX<\/strong> (<code>check_ajax_referer<\/code>) e verifica\u00e7\u00e3o de capacidade (<code>current_user_can('manage_options')<\/code>) em todas as a\u00e7\u00f5es administrativas.<\/li>\n<li><strong>Sanitiza\u00e7\u00e3o e valida\u00e7\u00e3o de entrada<\/strong> em todo dado recebido do cliente, e <strong>consultas ao banco sempre parametrizadas<\/strong> (<code>$wpdb-&gt;prepare<\/code>).<\/li>\n<li><strong>Escape de sa\u00edda<\/strong> (<code>esc_html<\/code>, <code>esc_attr<\/code>, <code>esc_url<\/code>) em todo HTML gerado dinamicamente.<\/li>\n<li><strong>Tokens de API (Google Maps, Melhor Envio, Frenet) nunca expostos ao front-end<\/strong> \u2014 usados apenas em requisi\u00e7\u00f5es feitas pelo servidor.<\/li>\n<li><strong>Upload de anexos do chamado de suporte validado pelo conte\u00fado real do arquivo<\/strong> (<code>wp_check_filetype_and_ext()<\/code>), n\u00e3o apenas pelo tipo declarado pelo navegador.<\/li>\n<li><strong>Nenhum script de terceiros carregado por CDN externo<\/strong> \u2014 bibliotecas empacotadas localmente (ver \"Bibliotecas de Terceiros Empacotadas\" abaixo).<\/li>\n<li>Nenhum dado pessoal do cliente \u00e9 repassado a servidores externos al\u00e9m das APIs de CEP\/frete estritamente necess\u00e1rias para o c\u00e1lculo em curso.<\/li>\n<\/ul>\n\n<h3>Como usar cada aba do painel<\/h3>\n\n<p><strong>Geral &amp; Busca de CEP<\/strong> \u2014 liga\/desliga o autocompletar de Cobran\u00e7a e Entrega, escolhe as APIs de CEP ativas e a ordem de prioridade, mapeia o campo de bairro, ativa o foco autom\u00e1tico e define a dura\u00e7\u00e3o do cache.<\/p>\n\n<p><strong>Frete na P\u00e1gina de Produto \/ Carrinho \/ Checkout<\/strong> \u2014 ativa cada simulador, escolhe a posi\u00e7\u00e3o na p\u00e1gina e o t\u00edtulo da caixa.<\/p>\n\n<p><strong>Checkout<\/strong> (tamb\u00e9m no menu lateral) \u2014 re\u00fane o simulador de frete do checkout e o Checkout Moderno: ativa o checkout em 3 etapas e o modo compacto, define os t\u00edtulos das etapas, o texto do bot\u00e3o, a cor de destaque, as mensagens por forma de pagamento (Pix, cart\u00e3o, boleto) e o destaque do Pix na p\u00e1gina de pedido recebido. Funciona com o checkout cl\u00e1ssico; com Checkout em Blocos, Fluid Checkout ou CartFlows ele se desativa sozinho (a aba mostra o motivo).<\/p>\n\n<p><strong>Growth Marketing<\/strong> \u2014 ativa a Previs\u00e3o de Entrega e a Barra de Progresso de Frete Gr\u00e1tis Din\u00e2mico.<\/p>\n\n<p><strong>Retirada em Loja<\/strong> \u2014 chave de API do Google Maps, cadastro de lojas f\u00edsicas e configura\u00e7\u00e3o do Frete por Km.<\/p>\n\n<p><strong>Integra\u00e7\u00f5es de Frete<\/strong> \u2014 testa a conex\u00e3o com as APIs do Melhor Envio e da Frenet.<\/p>\n\n<p><strong>Tabela de Frete<\/strong> (em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Entrega) \u2014 abra ou crie uma Zona de Entrega, clique em \"Adicionar m\u00e9todo de entrega\" e escolha \"Tabela de Frete \u2014 AutoCEP\". Em \"Editar\", cole a planilha ou use \"Importar arquivo CSV\" e salve. Com \"Limitar a zona\" ligado, a zona passa a atender s\u00f3 as faixas de CEP da tabela e \u00e9 colocada acima de zonas mais gerais (ex.: Brasil inteiro). Dica: use uma zona s\u00f3 para a tabela.<\/p>\n\n<p><strong>Mensagens &amp; UX<\/strong> \u2014 edita todos os textos exibidos ao cliente e o bloqueio do bot\u00e3o \"Finalizar Compra\" durante requisi\u00e7\u00f5es.<\/p>\n\n<p><strong>Apar\u00eancia<\/strong> \u2014 personaliza cores, arredondamento, tipografia e espa\u00e7amento das caixas de frete.<\/p>\n\n<p><strong>Analytics<\/strong> \u2014 dashboard de intelig\u00eancia de frete.<\/p>\n\n<p><strong>Suporte T\u00e9cnico<\/strong> \u2014 abre chamados com anexos, acompanha \"Meus Chamados\" e traz os contatos diretos da equipe TESW.<\/p>\n\n<p><strong>Diagn\u00f3stico e Logs<\/strong> \u2014 status em tempo real das APIs de CEP e hist\u00f3rico de falhas.<\/p>\n\n<h3>Como o simulador de frete se relaciona com o frete real do pedido<\/h3>\n\n<ul>\n<li><strong>Na p\u00e1gina do produto<\/strong>: a caixa \u00e9 <strong>informativa<\/strong> \u2014 o item ainda n\u00e3o est\u00e1 no carrinho, ent\u00e3o n\u00e3o h\u00e1 \"sele\u00e7\u00e3o\" poss\u00edvel ali.<\/li>\n<li><strong>No carrinho e no checkout<\/strong>: cada op\u00e7\u00e3o simulada tem um bot\u00e3o <strong>\"Selecionar\"<\/strong> que aplica de verdade aquele m\u00e9todo ao pedido, usando o mesmo mecanismo de sess\u00e3o que o WooCommerce usa nos pr\u00f3prios bot\u00f5es de r\u00e1dio de frete.<\/li>\n<\/ul>\n\n<p>O CEP e o m\u00e9todo enviados no clique de \"Selecionar\" s\u00e3o sempre revalidados no servidor no momento da sele\u00e7\u00e3o \u2014 o plugin nunca aplica cegamente o que o navegador envia.<\/p>\n\n<h3>Compatibility<\/h3>\n\n<ul>\n<li><strong>WooCommerce<\/strong>: 4.0 ou superior, testado at\u00e9 a 11.1. Compat\u00edvel com o armazenamento de pedidos de alto desempenho (HPOS).<\/li>\n<li><strong>Checkouts compat\u00edveis<\/strong>: checkout cl\u00e1ssico e Checkout em Blocos do WooCommerce, Fluid Checkout, CartFlows e montagens em etapas via Elementor Pro. O Checkout Moderno (multietapas) do AutoCEP funciona sobre o checkout cl\u00e1ssico.<\/li>\n<li><strong>Integradores de frete<\/strong>: Melhor Envio, Frenet, Correios, Frete Fixo, Frete Gr\u00e1tis, Retirada Local e a Tabela de Frete do AutoCEP.<\/li>\n<li><strong>Dispositivos<\/strong>: desktop, Android, iPhone e iPad (sem zoom autom\u00e1tico no campo de CEP).<\/li>\n<li><strong>APIs de CEP<\/strong>: ViaCEP, BrasilAPI e ApiCEP.<\/li>\n<li><strong>APIs de rota<\/strong>: Google Maps Distance Matrix API (opcional, usada apenas nos m\u00f3dulos de Frete por Km e  \u2026<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>No painel do WordPress, v\u00e1 em <strong>Plugins &gt; Adicionar Novo &gt; Enviar Plugin<\/strong>.<\/li>\n<li>Selecione o arquivo <code>autocep.zip<\/code> e clique em <strong>Instalar Agora<\/strong>.<\/li>\n<li>Clique em <strong>Ativar Plugin<\/strong>.<\/li>\n<li>O autocompletar de CEP no checkout j\u00e1 entra em funcionamento imediatamente.<\/li>\n<li>No menu <strong>AutoCEP<\/strong>, ative os simuladores, a previs\u00e3o de entrega, configure a identidade visual e teste a velocidade das APIs de CEP.<\/li>\n<\/ol>\n\n<p><strong>Atualizando de uma vers\u00e3o anterior<\/strong>: basta substituir os arquivos do plugin pelos desta vers\u00e3o (ou desativar e reativar depois de sobrescrever). As configura\u00e7\u00f5es j\u00e1 salvas s\u00e3o preservadas.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"o%20plugin%20%C3%A9%20realmente%20100%25%20gratuito%3F\"><h3>O plugin \u00e9 realmente 100% gratuito?<\/h3><\/dt>\n<dd><p>Sim. N\u00e3o existe vers\u00e3o \"Lite\" limitada nem cobran\u00e7a para liberar frete por Km, simulador de produto, previs\u00e3o de entrega, barra de frete gr\u00e1tis, personaliza\u00e7\u00e3o visual ou o dashboard de Analytics.<\/p><\/dd>\n<dt id=\"como%20funciona%20a%20escolha%20da%20api%20de%20cep%20mais%20r%C3%A1pida%3F\"><h3>Como funciona a escolha da API de CEP mais r\u00e1pida?<\/h3><\/dt>\n<dd><p>Na aba \"Frete e Busca de CEP\", o bot\u00e3o \"Testar CEP Agora\" mede a lat\u00eancia (em milissegundos) do ViaCEP, BrasilAPI e ApiCEP. Voc\u00ea define a ordem de prioridade (1\u00ba, 2\u00ba e 3\u00ba) e o plugin faz o fallback autom\u00e1tico caso a primeira da lista oscile.<\/p><\/dd>\n<dt id=\"o%20autocep%20calcula%20o%20frete%20sozinho%20ou%20precisa%20de%20transportadoras%20cadastradas%3F\"><h3>O AutoCEP calcula o frete sozinho ou precisa de transportadoras cadastradas?<\/h3><\/dt>\n<dd><p>Os dois. Ele l\u00ea em tempo real as transportadoras j\u00e1 configuradas em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Entrega \u2014 Frete Fixo, Frete Gr\u00e1tis, Retirada Local, Correios, Melhor Envio e Frenet \u2014 e tamb\u00e9m traz a <strong>Tabela de Frete<\/strong> pr\u00f3pria, para voc\u00ea cobrar pela sua planilha de faixas de CEP e peso, sem depender de transportadora.<\/p><\/dd>\n<dt id=\"posso%20cadastrar%20minha%20pr%C3%B3pria%20planilha%20de%20frete%20do%20excel%3F\"><h3>Posso cadastrar minha pr\u00f3pria planilha de frete do Excel?<\/h3><\/dt>\n<dd><p>Sim. Adicione o m\u00e9todo \"Tabela de Frete \u2014 AutoCEP\" numa Zona de Entrega, clique em \"Editar\" e cole as linhas copiadas do Excel\/Google Planilhas ou importe o arquivo CSV (UTF-8 ou o \"CSV separado por ponto e v\u00edrgula\" padr\u00e3o do Excel). As colunas s\u00e3o: <code>cep_inicial; cep_final; peso_min; peso_max; valor; prazo; nome<\/code>. Deixe <code>peso_max<\/code> vazio para \"sem limite\"; <code>prazo<\/code> e <code>nome<\/code> s\u00e3o opcionais. Cadastre o peso dos produtos, pois \u00e9 ele que define a faixa usada.<\/p><\/dd>\n<dt id=\"criei%20um%20campo%20extra%20e%20ele%20n%C3%A3o%20aparece%20no%20checkout\"><h3>Criei um campo extra e ele n\u00e3o aparece no checkout<\/h3><\/dt>\n<dd><p>O AutoCEP s\u00f3 adiciona campos que o WooCommerce aceita. Em AutoCEP &gt; Checkout &gt; Campos Extras, campos com problema (ex.: lista sem op\u00e7\u00f5es, identificador em conflito) mostram um aviso com o motivo. Os campos s\u00f3 valem com o Checkout Moderno ativado.<\/p><\/dd>\n<dt id=\"como%20ativar%20o%20checkout%20em%20etapas%3F\"><h3>Como ativar o checkout em etapas?<\/h3><\/dt>\n<dd><p>Em AutoCEP &gt; Checkout (tamb\u00e9m no menu lateral do AutoCEP), marque \"Ativar Checkout Moderno\" e salve. Ele funciona com o checkout cl\u00e1ssico do WooCommerce (p\u00e1gina \"Finalizar compra\" com o shortcode [woocommerce_checkout]). Se a sua p\u00e1gina usa o Checkout em Blocos, o Fluid Checkout ou o CartFlows, que j\u00e1 t\u00eam layout pr\u00f3prio, o AutoCEP n\u00e3o altera o checkout e explica o motivo na pr\u00f3pria aba.<\/p><\/dd>\n<dt id=\"o%20checkout%20moderno%20mostra%20o%20qr%20code%20do%20pix%20antes%20de%20finalizar%3F\"><h3>O Checkout Moderno mostra o QR Code do Pix antes de finalizar?<\/h3><\/dt>\n<dd><p>N\u00e3o \u2014 o QR Code e o c\u00f3digo copia e cola s\u00e3o gerados pelo gateway de pagamento s\u00f3 depois que o pedido \u00e9 criado. Na etapa de pagamento, o AutoCEP explica isso ao cliente; na p\u00e1gina de pedido recebido, destaca o QR Code e adiciona o bot\u00e3o \"Copiar c\u00f3digo Pix\" (op\u00e7\u00e3o ativada por padr\u00e3o).<\/p><\/dd>\n<dt id=\"como%20aceitar%20pagamento%20na%20entrega%20%28dinheiro%20com%20troco%2C%20maquininha%2C%20pix%29%3F\"><h3>Como aceitar pagamento na entrega (dinheiro com troco, maquininha, Pix)?<\/h3><\/dt>\n<dd><p>Ative \"Pagamento na Entrega \u2014 AutoCEP\" em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Pagamentos (ou pelo bot\u00e3o na aba Checkout do AutoCEP). Escolha as formas aceitas e, se quiser, os fretes em que ele aparece \u2014 por exemplo, s\u00f3 Motoboy e Retirada em Loja, deixando de fora Correios e transportadoras. No dinheiro, o cliente informa o troco; o pedido mostra quanto troco levar.<\/p><\/dd>\n<dt id=\"aparece%20%221%20plugin%20incompat%C3%ADvel%20detectado%20%28autocep%29%22%20no%20woocommerce\"><h3>Aparece \"1 plugin incompat\u00edvel detectado (AutoCEP)\" no WooCommerce<\/h3><\/dt>\n<dd><p>Atualize para a vers\u00e3o 2.48 ou superior: ela declara compatibilidade com o armazenamento de pedidos de alto desempenho (HPOS) e com o Checkout em Blocos, e o aviso desaparece. N\u00e3o \u00e9 preciso desativar o HPOS.<\/p><\/dd>\n<dt id=\"a%20simula%C3%A7%C3%A3o%20diz%20%22nenhuma%20op%C3%A7%C3%A3o%20de%20frete%20dispon%C3%ADvel%22%2C%20mas%20os%20m%C3%A9todos%20est%C3%A3o%20configurados\"><h3>A simula\u00e7\u00e3o diz \"Nenhuma op\u00e7\u00e3o de frete dispon\u00edvel\", mas os m\u00e9todos est\u00e3o configurados<\/h3><\/dt>\n<dd><p>O WooCommerce usa s\u00f3 a <strong>primeira Zona de Entrega<\/strong> da lista que combina com o CEP do cliente. Se houver uma zona acima sem m\u00e9todos ativos (ou com m\u00e9todos que n\u00e3o atendem aquele CEP), as zonas de baixo nunca s\u00e3o consultadas \u2014 o pr\u00f3prio WooCommerce mostra um aviso laranja nessas zonas. Ordene as zonas da mais espec\u00edfica (CEPs, cidades) para a mais geral (Brasil) e clique em \"Limpar cache\" no AutoCEP.<\/p><\/dd>\n<dt id=\"como%20posso%20ajudar%20o%20projeto%2C%20j%C3%A1%20que%20ele%20%C3%A9%20gratuito%3F\"><h3>Como posso ajudar o projeto, j\u00e1 que ele \u00e9 gratuito?<\/h3><\/dt>\n<dd><p>Avaliando! Em <strong>AutoCEP &gt; Avalie o Plugin<\/strong> voc\u00ea d\u00e1 sua nota em estrelas, comenta e envia sugest\u00f5es direto para a equipe. Se gostou, deixe tamb\u00e9m sua avalia\u00e7\u00e3o no <a href=\"https:\/\/wordpress.org\/support\/plugin\/autocep\/reviews\/#new-post\">WordPress.org<\/a> \u2014 isso ajuda outros lojistas a encontrar o AutoCEP.<\/p><\/dd>\n<dt id=\"como%20integrar%20com%20melhor%20envio%20ou%20frenet%3F\"><h3>Como integrar com Melhor Envio ou Frenet?<\/h3><\/dt>\n<dd><p>Instale o plugin oficial da transportadora, cole o token nas configura\u00e7\u00f5es dela e adicione o m\u00e9todo na sua Zona de Entrega do WooCommerce. O AutoCEP reconhece o pre\u00e7o e o prazo automaticamente. A aba \"Integra\u00e7\u00f5es de Frete\" do AutoCEP testa apenas se o token est\u00e1 v\u00e1lido e a API est\u00e1 no ar \u2014 o c\u00e1lculo real do frete continua sendo feito pelo plugin oficial da transportadora.<\/p><\/dd>\n<dt id=\"por%20que%20algumas%20transportadoras%20n%C3%A3o%20aparecem%20na%20simula%C3%A7%C3%A3o%2C%20mesmo%20habilitadas%20na%20zona%3F\"><h3>Por que algumas transportadoras n\u00e3o aparecem na simula\u00e7\u00e3o, mesmo habilitadas na zona?<\/h3><\/dt>\n<dd><p>Normalmente n\u00e3o \u00e9 um bug \u2014 \u00e9 a pr\u00f3pria transportadora rejeitando a cota\u00e7\u00e3o silenciosamente (sem erro, s\u00f3 sem pre\u00e7o). A causa mais comum \u00e9 o produto estar sem peso ou dimens\u00f5es cadastrados em Produtos &gt; Editar Produto &gt; Entrega; transportadoras privadas via API (ex.: Jadlog, Azul Ecommerce) costumam exigir esse dado, enquanto os Correios tendem a ser mais tolerantes. A aba Diagn\u00f3stico e Logs aponta exatamente qual m\u00e9todo n\u00e3o retornou taxa.<\/p><\/dd>\n<dt id=\"o%20que%20acontece%20se%20o%20google%20maps%20ficar%20fora%20do%20ar%3F\"><h3>O que acontece se o Google Maps ficar fora do ar?<\/h3><\/dt>\n<dd><p>O AutoCEP aciona automaticamente o c\u00e1lculo por conting\u00eancia (dist\u00e2ncia em linha reta \u00d7 1.3), para que o cliente continue vendo uma op\u00e7\u00e3o de frete local sem interrup\u00e7\u00e3o.<\/p><\/dd>\n<dt id=\"o%20autocompletar%20de%20cep%20parou%20de%20funcionar%20depois%20que%20troquei%20de%20tema%2Fcheckout%3F\"><h3>O autocompletar de CEP parou de funcionar depois que troquei de tema\/checkout?<\/h3><\/dt>\n<dd><p>O plugin observa automaticamente mudan\u00e7as no formul\u00e1rio de checkout, continuando a funcionar mesmo em checkouts de terceiros como Fluid Checkout e CartFlows. Se ainda assim n\u00e3o funcionar, confira em Diagn\u00f3stico e Logs se alguma API est\u00e1 offline.<\/p><\/dd>\n<dt id=\"por%20que%20aparecem%20duas%20caixas%20de%20frete%20na%20p%C3%A1gina%20de%20produto%3F\"><h3>Por que aparecem duas caixas de frete na p\u00e1gina de produto?<\/h3><\/dt>\n<dd><p>Provavelmente outro plugin (ex.: Melhor Envio) tamb\u00e9m insere sua pr\u00f3pria caixa autom\u00e1tica. O AutoCEP desliga a do Melhor Envio automaticamente quando o detecta instalado.<\/p><\/dd>\n<dt id=\"aparece%20%22cep%20n%C3%A3o%20encontrado%22%20mesmo%20digitando%20um%20cep%20que%20parece%20v%C3%A1lido\"><h3>Aparece \"CEP n\u00e3o encontrado\" mesmo digitando um CEP que parece v\u00e1lido<\/h3><\/dt>\n<dd><p>Confira se o CEP foi digitado corretamente. Se ele realmente n\u00e3o existir na base dos Correios, nenhuma das tr\u00eas APIs (ViaCEP, BrasilAPI, ApiCEP) vai encontr\u00e1-lo \u2014 isso \u00e9 esperado. Se o CEP existe, o mais prov\u00e1vel \u00e9 uma API bloqueando o servidor temporariamente por excesso de consultas: a partir da vers\u00e3o 2.48 isso \u00e9 tratado como falha da API (que entra em pausa e \u00e9 substitu\u00edda pela pr\u00f3xima), e n\u00e3o como CEP inexistente. Clique em \"Limpar cache\" na aba Frete e Busca de CEP para apagar resultados antigos.<\/p><\/dd>\n<dt id=\"clicar%20em%20uma%20op%C3%A7%C3%A3o%20de%20frete%20simulada%20aplica%20esse%20frete%20ao%20pedido%3F\"><h3>Clicar em uma op\u00e7\u00e3o de frete simulada aplica esse frete ao pedido?<\/h3><\/dt>\n<dd><p>No carrinho e no checkout, sim. Na p\u00e1gina do produto, a simula\u00e7\u00e3o \u00e9 apenas informativa, j\u00e1 que o item ainda n\u00e3o est\u00e1 no carrinho.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.48<\/h4>\n\n<ul>\n<li><strong>Seguran\u00e7a \u2014 limite de uso por visitante<\/strong> nos endpoints p\u00fablicos que consultam servi\u00e7os externos ou gravam no banco (busca de CEP, sugest\u00f5es de endere\u00e7o, detalhes do Google, funil do checkout, status do pedido): impede que rob\u00f4s usem a chave de seguran\u00e7a da p\u00e1gina para gerar milhares de consultas (inclusive cobradas pelo Google). Limites bem acima do uso normal; ajust\u00e1veis pelo filtro <code>autocep_rate_limit<\/code> (0 desliga).<\/li>\n<li><strong>Limpeza ao excluir o plugin<\/strong> (<code>uninstall.php<\/code>): remove as tabelas, configura\u00e7\u00f5es e caches do AutoCEP. Dados dos pedidos (forma de pagamento na entrega, troco, campos extras) s\u00e3o mantidos. Para manter tudo: <code>add_filter('autocep_keep_data_on_uninstall', '__return_true');<\/code>.<\/li>\n<li><strong>Privacidade<\/strong>: o CEP dos clientes s\u00f3 \u00e9 gravado no log do servidor (<code>error_log<\/code>) com o modo de depura\u00e7\u00e3o do WordPress ativo; os registros normais ficam na aba Diagn\u00f3stico e Logs.<\/li>\n<li><strong>Compatibilidade<\/strong>: funil do checkout n\u00e3o depende mais de <code>wp_date()<\/code> (WordPress 5.3+), mantendo o suporte declarado ao WordPress 5.0.<\/li>\n<li><strong>Verifica\u00e7\u00e3o de campos extras do checkout<\/strong>: antes de gravar, na tela do painel e no checkout, o AutoCEP confere se o WooCommerce aceita o campo (r\u00f3tulo preenchido, tipo suportado, lista com op\u00e7\u00f5es, identificador sem conflito com outros campos). Campo que n\u00e3o passa n\u00e3o \u00e9 adicionado (com aviso do motivo) e nunca quebra o checkout. Limite de 20 campos extras.<\/li>\n<li><strong>Novo: Sugest\u00f5es de Endere\u00e7o ao Digitar<\/strong> (aba Frete e Busca de CEP): lista de ruas reais enquanto o cliente digita o endere\u00e7o; ao escolher, preenche rua, bairro, cidade, estado e CEP. ViaCEP (gr\u00e1tis) ou Google Places (opcional). Entende abrevia\u00e7\u00f5es de tipo e t\u00edtulos (Av, R., Al., Dr., Prof.), corrige tipo digitado errado (\"Rua Paulista\" \u2192 Avenida Paulista), mostra o trecho de numera\u00e7\u00e3o de ruas longas, ignora CEPs de grandes usu\u00e1rios e caixas postais, e, em cidades de CEP \u00fanico (sem ruas na base dos Correios, comum em cidades pequenas), sugere as ruas do OpenStreetMap (Photon) com o CEP geral oficial. Resultados em cache.<\/li>\n<li><strong>Novo: Status do Pedido em Tempo Real e P\u00e1gina de Obrigado<\/strong> (aba P\u00f3s-Compra, opcional): na p\u00e1gina de pedido recebido e na p\u00e1gina do pedido em Minha Conta, o AutoCEP acompanha o status enquanto o cliente est\u00e1 na tela (ex.: pagando o Pix). Quando muda, mostra uma mensagem configur\u00e1vel por status (aprovado, conclu\u00eddo, em espera, falhou, cancelado, reembolsado) e, com o pagamento aprovado, leva o cliente para a sua p\u00e1gina de agradecimento (com {pedido} na URL). Pedidos com Pix\/boleto pendente continuam na p\u00e1gina do WooCommerce at\u00e9 o pagamento \u2014 o cliente n\u00e3o perde o QR Code. Seguro (s\u00f3 o dono do pedido consulta, pela chave do pedido), leve (s\u00f3 nessas p\u00e1ginas, a cada 5 s, at\u00e9 15 min, pausando com a aba em segundo plano) e compat\u00edvel com HPOS.<\/li>\n<li><strong>Novo: Pagamento na Entrega \u2014 AutoCEP<\/strong> (forma de pagamento): o cliente escolhe como vai pagar ao receber \u2014 dinheiro (com \"Troco para quanto?\" e \"N\u00e3o preciso de troco\"), Pix na entrega, cart\u00e3o de d\u00e9bito\/cr\u00e9dito na maquininha ou vale-refei\u00e7\u00e3o\/alimenta\u00e7\u00e3o. A loja escolhe as formas aceitas, para quais fretes ele aparece (ex.: s\u00f3 Motoboy e Retirada) e o status do pedido. A forma e o troco ficam salvos no pedido (HPOS) e aparecem na p\u00e1gina de pedido recebido, em Minha Conta, nos e-mails e na tela do pedido. Configura\u00e7\u00e3o em WooCommerce &gt; Pagamentos ou pelo atalho na aba Checkout do AutoCEP.<\/li>\n<li><strong>\"Entregar em um endere\u00e7o diferente\" no Checkout Moderno<\/strong>: come\u00e7a desmarcado (o cliente marca se quiser; op\u00e7\u00e3o na aba Checkout) e, quando marcado, os campos de entrega t\u00eam o mesmo tamanho e a mesma grade dos de cobran\u00e7a (antes ficavam estreitos e com um espa\u00e7o vazio antes de \"Nome\").<\/li>\n<li><strong>Tamanho do Checkout Moderno personaliz\u00e1vel<\/strong>: largura do formul\u00e1rio, largura do resumo do pedido e altura dos campos (aba Checkout).<\/li>\n<li><strong>Corrigida a rolagem lateral da p\u00e1gina no Checkout Moderno<\/strong> com plugins que usam Select2 (ex.: \"Tipo de Pessoa\" do plugin de CPF\/CNPJ): o select original escondido pelo Select2 recebia a largura dos campos e empurrava a p\u00e1gina para o lado.<\/li>\n<li><strong>Conta do cliente no Checkout Moderno<\/strong>: escolha no AutoCEP se a conta \u00e9 obrigat\u00f3ria, opcional ou dispensada (sem mexer nas configura\u00e7\u00f5es do WooCommerce). O login do topo (\"J\u00e1 \u00e9 cliente? Clique aqui\") foi levado para dentro da etapa Identifica\u00e7\u00e3o \u2014 um \u00fanico lugar com senha \u2014 e o aviso de conta mostra o e-mail que o cliente digitou ({email}).<\/li>\n<li><strong>Aviso de cria\u00e7\u00e3o de conta no Checkout Moderno<\/strong>: na etapa Identifica\u00e7\u00e3o, quem n\u00e3o tem conta v\u00ea por que e como a conta \u00e9 criada (conta obrigat\u00f3ria com senha, senha autom\u00e1tica por e-mail ou conta opcional \u2014 o texto se adapta \u00e0 configura\u00e7\u00e3o da loja) e o link \"J\u00e1 tem conta? Entrar\", que abre o login do pr\u00f3prio checkout. Texto personaliz\u00e1vel na aba Checkout.<\/li>\n<li><strong>Corrigido estado errado no frete (ex.: CEP do Piau\u00ed aparecendo como \"Entrega para Para\u00edba\")<\/strong>: o simulador gravava s\u00f3 o CEP novo no cliente e mantinha o estado e a cidade da busca anterior; e, quando o CEP n\u00e3o era encontrado, usava o estado guardado na sess\u00e3o. Agora o CEP, o estado e a cidade s\u00e3o gravados juntos; sem resposta das APIs, o estado vem das faixas oficiais de CEP dos Correios; a calculadora \"Mudar endere\u00e7o\" do carrinho tamb\u00e9m passa a usar o estado e a cidade do CEP; e todo c\u00e1lculo de frete no Brasil usa o estado do CEP para escolher a Zona de Entrega. CEP confirmado como inexistente pelas APIs mostra \"CEP n\u00e3o encontrado\" em vez de calcular frete.<\/li>\n<li><strong>Fim do \"carregando\" a cada letra no checkout<\/strong>: digitar rua, n\u00famero, complemento ou bairro n\u00e3o dispara mais o rec\u00e1lculo de frete e totais do WooCommerce (que bloqueava o resumo a cada pausa na digita\u00e7\u00e3o). CEP, cidade, estado e pa\u00eds continuam recalculando normalmente.<\/li>\n<li><strong>Novo: Funil do Checkout na aba Analytics<\/strong> \u2014 taxa de convers\u00e3o do Checkout Moderno, desist\u00eancia em cada etapa, receita e ticket m\u00e9dio, tempo m\u00e9dio at\u00e9 o pedido, convers\u00e3o por forma de pagamento (Pix\/cart\u00e3o\/boleto) e por aparelho (celular\/computador) e os campos com mais erros. Cada passo conta uma vez por cliente por dia; pedidos de outros caminhos n\u00e3o entram no funil; nenhum dado pessoal \u00e9 gravado (s\u00f3 um c\u00f3digo de sess\u00e3o an\u00f4nimo). Segue a op\u00e7\u00e3o \"Coletar Estat\u00edsticas\" e o bot\u00e3o \"Limpar\" da aba.<\/li>\n<li><strong>Novo: Checkout Moderno (Multietapas)<\/strong> \u2014 aba \"Checkout\" (tamb\u00e9m no menu lateral): checkout cl\u00e1ssico em 3 etapas (Identifica\u00e7\u00e3o, Entrega, Pagamento) com resumo do pedido fixo, valida\u00e7\u00e3o por etapa (e-mail, telefone, CEP, frete escolhido), modo compacto, layout por forma de pagamento (Pix, cart\u00e3o, boleto \u2014 tipo detectado automaticamente pelo gateway) e destaque do QR Code\/c\u00f3digo Pix com bot\u00e3o de copiar na p\u00e1gina de pedido recebido. Inclui gerenciador de campos (esconder empresa, complemento, sobrenome, telefone e observa\u00e7\u00f5es; definir obrigat\u00f3rio\/opcional; renomear) e campos extras (texto, n\u00famero, data, lista, caixa de sele\u00e7\u00e3o) salvos no pedido e exibidos no admin e nos e-mails. O simulador de frete do AutoCEP fica no topo da etapa Entrega (ou oculto), sincronizado com o CEP, e o frete \u00e9 recalculado assim que o CEP fica completo. Formul\u00e1rio compacto no estilo Fluid Checkout, alinhado com o resumo do pedido (cupom de desconto dentro do resumo, aplicado pelo pr\u00f3prio WooCommerce): coluna do formul\u00e1rio mais estreita e campos pequenos e do mesmo tamanho (38px, em duas colunas iguais no computador, sem buracos causados pelas divis\u00f3rias que o WooCommerce e plugins de CPF\/CNPJ inserem entre os campos), simulador de frete com visual moderno dentro da etapa e layout ajustado de 320px a telas largas. Os arquivos CSS\/JS do plugin passam a ter a data de modifica\u00e7\u00e3o na vers\u00e3o (?ver=), para que plugins de cache como o WP Rocket nunca sirvam uma c\u00f3pia antiga ap\u00f3s atualizar. Volta automaticamente para a etapa do campo com erro se o WooCommerce recusar o pedido. Desativa-se sozinho com Checkout em Blocos, Fluid Checkout e CartFlows.<\/li>\n<li><strong>Novo m\u00e9todo de envio \"Tabela de Frete \u2014 AutoCEP\"<\/strong>: cadastre sua pr\u00f3pria planilha de frete por faixa de CEP e peso em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Entrega &gt; (Zona) &gt; Adicionar m\u00e9todo. Cole as linhas direto do Excel\/Google Planilhas ou importe um arquivo CSV, com as colunas <code>cep_inicial; cep_final; peso_min; peso_max; valor; prazo; nome<\/code>. Linhas com nomes diferentes viram op\u00e7\u00f5es de frete distintas (ex.: Econ\u00f4mico e Expresso); o prazo aparece no nome do frete e alimenta a previs\u00e3o de entrega; taxa adicional opcional. Funciona no carrinho, checkout (cl\u00e1ssico e em blocos) e no simulador de frete do produto.<\/li>\n<li><strong>Compatibilidade com HPOS (armazenamento de pedidos de alto desempenho)<\/strong>: o plugin agora declara compatibilidade com as tabelas de pedidos do WooCommerce, removendo o aviso \"1 plugin incompat\u00edvel detectado (AutoCEP)\".<\/li>\n<li>Estat\u00edstica de \"m\u00e9todos de envio mais usados\" passa a ler os pedidos da tabela HPOS quando ela est\u00e1 ativa (mant\u00e9m a leitura tradicional quando desativada).<\/li>\n<li><strong>Autocompletar de CEP no Checkout em Blocos<\/strong>: o preenchimento autom\u00e1tico do endere\u00e7o agora funciona tamb\u00e9m no checkout em blocos (padr\u00e3o nas instala\u00e7\u00f5es novas do WooCommerce), atualizando rua, bairro (no Complemento), cidade e estado diretamente no formul\u00e1rio. O plugin tamb\u00e9m declara compatibilidade com o Checkout em Blocos.<\/li>\n<li><strong>Corrigido zoom autom\u00e1tico no iPhone\/iPad<\/strong> ao tocar no campo de CEP do simulador de frete: em telas de toque o campo agora usa fonte de 16px (limite abaixo do qual o Safari do iOS amplia a p\u00e1gina), com campo e bot\u00e3o um pouco maiores para facilitar o toque. O zoom manual da p\u00e1gina continua dispon\u00edvel. O campo tamb\u00e9m passa a sugerir o CEP salvo no aparelho.<\/li>\n<li><strong>Corrigido t\u00edtulo em branco e janela de configura\u00e7\u00e3o vazia<\/strong> nos m\u00e9todos de envio do AutoCEP (Retirada em Loja e Tabela de Frete) em WooCommerce &gt; Configura\u00e7\u00f5es &gt; Entrega: os campos de configura\u00e7\u00e3o n\u00e3o eram carregados pelo WooCommerce.<\/li>\n<li><strong>Tabela de Frete limita a zona automaticamente<\/strong>: ao salvar, as faixas de CEP da tabela s\u00e3o unidas e gravadas em \"Limitar para CEPs espec\u00edficos\" da Zona de Entrega (op\u00e7\u00e3o \"Limitar a zona\", ativada por padr\u00e3o). Se uma zona mais geral (ex.: Brasil inteiro) estiver acima na lista e impedindo a tabela de ser usada, a zona da tabela \u00e9 movida para cima dela automaticamente; zonas mais espec\u00edficas (por CEP ou estado) mant\u00eam a prioridade. Isso s\u00f3 acontece quando a zona tem apenas a Tabela de Frete ativa (zonas compartilhadas com outros m\u00e9todos n\u00e3o s\u00e3o alteradas). Ao desativar ou excluir a tabela, a zona que ficar sem m\u00e9todos ativos desce para o fim da lista, para n\u00e3o bloquear as demais zonas (ex.: Melhor Envio); ao reativar, sobe de novo. A importa\u00e7\u00e3o de CSV tamb\u00e9m passou a aceitar arquivos salvos pelo Excel em ANSI\/Windows-1252, sem quebrar acentos.<\/li>\n<li><strong>Desempenho: busca de CEP e Retirada em Loja mais r\u00e1pidas quando uma API est\u00e1 lenta ou fora do ar<\/strong>: a API que falhar por conex\u00e3o\/timeout fica em pausa por alguns minutos (CEP: 5 min; Google Maps: 10 min) e \u00e9 pulada, em vez de cada cliente esperar o timeout de novo; timeouts reduzidos (APIs de CEP 8s \u2192 5s, Google Maps 12s \u2192 6s, OpenStreetMap 8s \u2192 5s); CEPs inexistentes ficam memorizados por 6 horas. Os testes de diagn\u00f3stico do painel ignoram a pausa.<\/li>\n<li><strong>Corrigido \"CEP n\u00e3o encontrado\" para CEPs v\u00e1lidos<\/strong>: respostas de erro das APIs (bloqueio por excesso de consultas, erro 5xx, p\u00e1gina HTML) eram tratadas como \"CEP inexistente\"; agora contam como falha da API (que entra em pausa) e s\u00f3 um \"n\u00e3o existe\" expl\u00edcito da API \u00e9 considerado. Corrigida tamb\u00e9m a consulta \u00e0 ApiCEP, que usava o CEP sem h\u00edfen e sempre recebia \"429 Blocked by flood\".<\/li>\n<li>Testado com WooCommerce 11.1.<\/li>\n<\/ul>\n\n<h4>2.47<\/h4>\n\n<ul>\n<li><strong>Nova aba \"Avalie o Plugin\"<\/strong> (tamb\u00e9m no submenu e no cabe\u00e7alho do painel): avalia\u00e7\u00e3o de 1 a 5 estrelas com coment\u00e1rio e sugest\u00f5es de melhoria, salva no site e enviada \u00e0 equipe TESW. Notas 4 e 5 exibem um convite para repetir a avalia\u00e7\u00e3o no WordPress.org.<\/li>\n<li>Novo v\u00eddeo de apresenta\u00e7\u00e3o (<a href=\"https:\/\/youtu.be\/EkEC8CJ_H5c\">youtu.be\/EkEC8CJ_H5c<\/a>), incorporado na Descri\u00e7\u00e3o do plugin no WordPress.org e na aba \"Avalie o Plugin\"; links do painel atualizados.<\/li>\n<\/ul>\n\n<h4>2.46<\/h4>\n\n<ul>\n<li><strong>Aba \"Integra\u00e7\u00f5es de Frete\" n\u00e3o pede mais token manual<\/strong>: o teste de conex\u00e3o do Melhor Envio agora l\u00ea automaticamente o token que o plugin oficial dele j\u00e1 tem salvo (<code>wpmelhorenvio_token<\/code>\/<code>wpmelhorenvio_token_sandbox<\/code>, respeitando o ambiente ativo); o teste da Frenet l\u00ea o token e o CEP de origem diretamente da inst\u00e2ncia do m\u00e9todo oficial configurada numa Zona de Entrega. Nenhum dado \u00e9 duplicado ou digitado de novo no AutoCEP.<\/li>\n<li><strong>Corrigido falso \"Token Inv\u00e1lido\" no teste do Melhor Envio<\/strong>: o teste sempre chamava a API de produ\u00e7\u00e3o (<code>www.melhorenvio.com.br<\/code>), mesmo quando o token detectado era de ambiente Sandbox \u2014 um token de sandbox nunca \u00e9 aceito no host de produ\u00e7\u00e3o (e vice-versa), pois s\u00e3o hosts diferentes (<code>api.melhorenvio.com<\/code> para produ\u00e7\u00e3o, <code>sandbox.melhorenvio.com.br<\/code> para sandbox), confirmado no c\u00f3digo-fonte oficial do plugin. Agora o host \u00e9 escolhido conforme o ambiente detectado.<\/li>\n<li>Removida a imagem de logo da p\u00e1gina de Cr\u00e9ditos (reduz o tamanho do pacote).<\/li>\n<li>Se\u00e7\u00e3o de cr\u00e9ditos do README expandida: pap\u00e9is, perfis (WordPress.org\/LinkedIn) e parceria com a Ritmo Digital.<\/li>\n<li>Removida a p\u00e1gina \"Cr\u00e9ditos\" do painel administrativo (e o respectivo link na listagem de Plugins) \u2014 as fotos <code>afonso.png<\/code>\/<code>wanderson.png<\/code>, que s\u00f3 eram usadas ali, tamb\u00e9m foram removidas.<\/li>\n<li>Removidos todos os coment\u00e1rios do c\u00f3digo PHP (incluindo PHPDoc e <code>phpcs:ignore<\/code>), a pedido expl\u00edcito, para a prepara\u00e7\u00e3o final de lan\u00e7amento. Coment\u00e1rios de JavaScript\/CSS embutidos em strings PHP (painel administrativo) foram mantidos intocados, por seguran\u00e7a \u2014 essa \u00e9 a mesma regi\u00e3o onde um bug de aspas de SVG j\u00e1 havia quebrado o site numa vers\u00e3o anterior.<\/li>\n<li><strong>Corrigido erro fatal introduzido pela remo\u00e7\u00e3o de coment\u00e1rios<\/strong>: em <code>class-autocep-shipping.php<\/code>, dois coment\u00e1rios de fim de linha terminavam na mesma linha de uma tag <code>?&gt;<\/code> de fechamento do PHP (ex.: <code>echo $x; \/\/ coment\u00e1rio ?&gt;&lt;\/div&gt;<\/code>). Como o PHP trata <code>?&gt;<\/code> como um encerrador impl\u00edcito de coment\u00e1rio de linha, e a remo\u00e7\u00e3o s\u00f3 considerava quebra de linha como fim de coment\u00e1rio, o <code>?&gt;&lt;\/div&gt;<\/code> acabou apagado junto \u2014 quebrando a sintaxe e derrubando o site com \"Parse error\" ao instalar. Corrigido restaurando as tags removidas nos dois pontos afetados; conferida a aus\u00eancia do mesmo padr\u00e3o em todo o restante do c\u00f3digo.<\/li>\n<li><strong>Corrigido erro fatal na instala\u00e7\u00e3o \u2014 cabe\u00e7alho do plugin ausente<\/strong>: o bloco de coment\u00e1rio <code>Plugin Name: AutoCEP<\/code> no topo do <code>autocep.php<\/code> tamb\u00e9m tinha sido removido junto com os demais coment\u00e1rios, mas esse bloco \u00e9 metadado obrigat\u00f3rio que o WordPress l\u00ea diretamente do arquivo (sem executar o PHP) para reconhecer que \u00e9 um plugin v\u00e1lido \u2014 sem ele, o instalador reportava \"Nenhum plugin v\u00e1lido foi encontrado\". Restaurado (enxuto, s\u00f3 com os campos que o WordPress efetivamente l\u00ea).<\/li>\n<li>Todos os links do README convertidos para hyperlinks reais (<code>[texto](url)<\/code>) \u2014 antes eram URLs soltas, sem link clic\u00e1vel, em v\u00e1rios pontos do documento.<\/li>\n<li>Adicionadas as 8 capturas de tela reais do painel (<code>screenshot-1.png<\/code> a <code>screenshot-8.png<\/code> em <code>wp-org-assets\/<\/code>), com a se\u00e7\u00e3o Screenshots do README atualizada para descrever cada uma.<\/li>\n<\/ul>\n\n<h4>2.45<\/h4>\n\n<ul>\n<li><strong>Corrigido erro fatal cr\u00edtico introduzido na v2.12.0<\/strong>: os \u00edcones de mapa+pin (cabe\u00e7alho do painel) e de headset (aba Suporte T\u00e9cnico) usavam URIs de SVG com aspas simples n\u00e3o escapadas dentro de uma string PHP tamb\u00e9m delimitada por aspas simples (<code>wp_add_inline_style('common', '...')<\/code>) \u2014 a primeira aspa do SVG fechava a string prematuramente, tornando o restante do arquivo um c\u00f3digo PHP inv\u00e1lido e derrubando o site inteiro com \"erro cr\u00edtico\" assim que o plugin era instalado. Corrigido substituindo as aspas simples do SVG por <code>%27<\/code> (URL-encoded), consistente com o restante do data URI j\u00e1 percent-encoded.<\/li>\n<li>Prepara\u00e7\u00e3o de lan\u00e7amento para o reposit\u00f3rio oficial do WordPress: n\u00famero de vers\u00e3o sincronizado em todo o plugin (header, constante <code>AUTOCEP_VERSION<\/code>, cache-busting de scripts\/estilos).<\/li>\n<li><strong>Corrigida viola\u00e7\u00e3o real das diretrizes do reposit\u00f3rio<\/strong>: a aba Analytics carregava a biblioteca Chart.js dinamicamente de um CDN externo (<code>cdn.jsdelivr.net<\/code>) no navegador do admin \u2014 n\u00e3o permitido pelas diretrizes do WordPress.org. Chart.js 4.4.0 agora \u00e9 empacotado localmente em <code>assets\/js\/vendor\/<\/code> e enfileirado via <code>wp_enqueue_script()<\/code>, sem nenhuma depend\u00eancia de servidor de terceiros.<\/li>\n<li>Revis\u00e3o de coment\u00e1rios no c\u00f3digo: removidos os poucos coment\u00e1rios puramente redundantes encontrados; mantidos todos os coment\u00e1rios <code>phpcs:ignore<\/code> (exigidos pela conformidade real com o WPCS) e todo o racional de compatibilidade\/seguran\u00e7a documentado.<\/li>\n<li>README reformulado com descri\u00e7\u00e3o completa de todos os m\u00f3dulos, FAQ ampliado e link para a <a href=\"https:\/\/tesw.com.br\/documentacao-autocep\">documenta\u00e7\u00e3o oficial<\/a>.<\/li>\n<li>Links diretos para a Documenta\u00e7\u00e3o Oficial e o V\u00eddeo de Demonstra\u00e7\u00e3o adicionados ao cabe\u00e7alho do painel administrativo e \u00e0 aba Suporte T\u00e9cnico.<\/li>\n<\/ul>\n\n<h4>2.12.0<\/h4>\n\n<ul>\n<li><strong>Nova aba \"Integra\u00e7\u00f5es de Frete\"<\/strong>: testes de conex\u00e3o em tempo real para as APIs do Melhor Envio (valida o Token de Acesso via endpoint autenticado de perfil) e da Frenet (valida o Token de Integra\u00e7\u00e3o via cota\u00e7\u00e3o de teste), com feedback visual verde\/vermelho\/\u00e2mbar e detalhamento t\u00e9cnico da falha quando aplic\u00e1vel. N\u00e3o substitui os plugins oficiais dessas transportadoras \u2014 \u00e9 s\u00f3 um diagn\u00f3stico.<\/li>\n<li><strong>Identidade visual do painel administrativo<\/strong> atualizada para uma paleta com mais tons de azul (cabe\u00e7alho, badge do menu \"+\" e destaques), reduzindo o uso de amarelo\/branco predominante.<\/li>\n<li><strong>\u00cdcone do menu lateral<\/strong> substitu\u00eddo por um mapa dobrado com pin de localiza\u00e7\u00e3o em destaque; <strong>\u00edcone da aba Suporte T\u00e9cnico<\/strong> substitu\u00eddo do antigo \"SOS\" (boia salva-vidas) por um headset de atendimento.<\/li>\n<li><strong>Seguran\u00e7a refor\u00e7ada<\/strong>: valida\u00e7\u00e3o dos anexos do formul\u00e1rio de chamado de suporte agora verifica o conte\u00fado real do arquivo (<code>wp_check_filetype_and_ext()<\/code>), n\u00e3o apenas o tipo declarado pelo navegador; corrigida uma falha de XSS armazenado no JSON injetado nos gr\u00e1ficos do Dashboard de Analytics (adicionadas as flags <code>JSON_HEX_TAG<\/code>\/<code>AMP<\/code>\/<code>APOS<\/code>\/<code>QUOT<\/code>).<\/li>\n<li>Auditoria completa de seguran\u00e7a e resili\u00eancia: revisadas todas as rotas AJAX (nonces e <code>current_user_can<\/code>), todas as consultas SQL (uso de <code>$wpdb-&gt;prepare<\/code>) e o tratamento de erros de todas as APIs externas (timeouts, HTTP 4xx\/5xx, JSON corrompido) \u2014 nenhum outro problema encontrado.<\/li>\n<\/ul>\n\n<h4>2.3.5<\/h4>\n\n<ul>\n<li>V\u00eddeo demonstrativo adicionado no topo da Descri\u00e7\u00e3o do README, no formato que o WordPress.org converte automaticamente em player incorporado.<\/li>\n<li>Removido o arquivo de v\u00eddeo local do pacote (<code>store-assets\/<\/code>), j\u00e1 hospedado no YouTube \u2014 reduz bastante o tamanho do .zip do plugin.<\/li>\n<li>Cr\u00e9ditos esclarecidos: vers\u00e3o 2.0 criada pela equipe TESW, com desenvolvimento principal de Wanderson Cesar.<\/li>\n<\/ul>\n\n<h4>2.3.4<\/h4>\n\n<ul>\n<li>Corrigido: ao selecionar um frete simulado no checkout, os campos de Cidade e Estado podiam continuar mostrando o endere\u00e7o antigo mesmo com o CEP j\u00e1 atualizado, quando o autocompletar de Cobran\u00e7a\/Entrega estava desligado nas configura\u00e7\u00f5es. Como essa sincroniza\u00e7\u00e3o acontece por uma a\u00e7\u00e3o expl\u00edcita do cliente (clicar em \"Selecionar\"), agora ela sempre atualiza o endere\u00e7o completo (rua\/bairro\/cidade\/estado), independente dessa op\u00e7\u00e3o.<\/li>\n<li>A sincroniza\u00e7\u00e3o de endere\u00e7o ao selecionar um frete agora espera a busca terminar de verdade antes de recalcular o checkout, em vez de um tempo fixo \u2014 mais confi\u00e1vel em conex\u00f5es lentas.<\/li>\n<li>Adicionados materiais de divulga\u00e7\u00e3o do plugin (\u00edcone, banner e capturas de tela do painel) na pasta <code>store-assets\/<\/code>, e se\u00e7\u00e3o de Screenshots no README.<\/li>\n<\/ul>\n\n<h4>2.3.3<\/h4>\n\n<ul>\n<li>Corrigido: ao selecionar um frete simulado no checkout quando a etapa \"M\u00e9todo de Entrega\" j\u00e1 estava renderizada com uma op\u00e7\u00e3o diferente marcada, o pr\u00f3prio rec\u00e1lculo nativo do WooCommerce reenviava o valor do r\u00e1dio ainda marcado na tela (o antigo) e sobrescrevia a sele\u00e7\u00e3o feita \u2014 mostrando \"Frete selecionado com sucesso\" mas mantendo o m\u00e9todo\/valor anterior. Agora o r\u00e1dio nativo correspondente \u00e9 marcado antes do rec\u00e1lculo, garantindo que a escolha feita na simula\u00e7\u00e3o seja a que efetivamente \u00e9 enviada e aplicada.<\/li>\n<\/ul>\n\n<h4>2.3.2<\/h4>\n\n<ul>\n<li>Card de simula\u00e7\u00e3o de frete menor e mais compacto (menos padding, fonte e espa\u00e7amentos reduzidos), para ocupar menos espa\u00e7o na p\u00e1gina de produto\/carrinho\/checkout.<\/li>\n<li>Corrigida (definitivamente) a apar\u00eancia \"torta\" do texto dentro do bot\u00e3o \"Calcular\": duas causas \u2014 o <code>letter-spacing<\/code> adicionava espa\u00e7o tamb\u00e9m depois da \u00faltima letra, descentralizando visualmente o texto; e a quebra de linha\/indenta\u00e7\u00e3o dentro da tag <code>&lt;button&gt;<\/code> no HTML podia deixar espa\u00e7os em branco nas bordas do texto em alguns navegadores. Ambas foram removidas.<\/li>\n<li>Link \"N\u00e3o sei meu CEP\" com visual mais intencional (centralizado, cor da marca, sem parecer um elemento solto\/quebrado).<\/li>\n<\/ul>\n\n<h4>2.3.1<\/h4>\n\n<ul>\n<li>Mensagem mais precisa quando nenhuma taxa de frete \u00e9 retornada: se a causa real for o CEP n\u00e3o existir em nenhuma das APIs consultadas, o cliente agora v\u00ea \"CEP n\u00e3o encontrado\" em vez da mensagem gen\u00e9rica \"nenhuma op\u00e7\u00e3o de frete dispon\u00edvel\", que escondia a causa real.<\/li>\n<li>Documentadas no README as duas situa\u00e7\u00f5es mais comuns de \"frete n\u00e3o aparece\": produto sem peso cadastrado (rejeitado silenciosamente por transportadoras como Jadlog\/Azul Ecommerce) e CEP inexistente.<\/li>\n<\/ul>\n\n<h4>2.3.0<\/h4>\n\n<ul>\n<li>Novo diagn\u00f3stico: quando a Zona de Entrega tem m\u00e9todos de frete habilitados que n\u00e3o retornam taxa (sem erro, apenas sem pre\u00e7o \u2014 comum com Melhor Envio\/Frenet quando uma transportadora espec\u00edfica n\u00e3o atende ao destino ou o produto n\u00e3o tem peso cadastrado), o log agora registra exatamente quais m\u00e9todos ficaram \"silenciosos\" e, quando aplic\u00e1vel, aponta o(s) produto(s) sem peso cadastrado como poss\u00edvel causa.<\/li>\n<\/ul>\n\n<h4>2.2.2<\/h4>\n\n<ul>\n<li>Estendida a corre\u00e7\u00e3o de compatibilidade com o Melhor Envio (2.2.1) para os simuladores de <strong>Carrinho e Checkout<\/strong>: o mesmo problema de fundo (o Melhor Envio n\u00e3o conseguir ler os produtos corretamente em determinados cen\u00e1rios) tamb\u00e9m podia acontecer ali, mas de forma silenciosa \u2014 retornando \"Nenhuma op\u00e7\u00e3o de frete dispon\u00edvel\" em vez de um erro. Agora cada item do pacote tamb\u00e9m recebe os dados formatados como rede de seguran\u00e7a, sem alterar o comportamento para quem j\u00e1 funcionava normalmente.<\/li>\n<\/ul>\n\n<h4>2.2.1<\/h4>\n\n<ul>\n<li>Corrigida a causa raiz real do erro \"Uma das transportadoras configuradas n\u00e3o respondeu corretamente\" no simulador de frete da <strong>p\u00e1gina de produto<\/strong> com o plugin oficial do Melhor Envio: o pacote simulado (fora do carrinho real) n\u00e3o inclu\u00eda a flag <code>product_page_calculation<\/code> nem os dados do produto no formato interno que o Melhor Envio espera nesse cen\u00e1rio. Isso fazia o c\u00e1lculo do Melhor Envio tentar ler do carrinho real \u2014 que funcionava \"por acidente\" quando havia algo no carrinho da sess\u00e3o (ex.: durante testes logado), mas falhava para qualquer visitante com o carrinho vazio. Agora o pacote \u00e9 montado no formato que o pr\u00f3prio Melhor Envio usa em sua calculadora oficial de p\u00e1gina de produto.<\/li>\n<li>O ajuste \u00e9 aplicado de forma defensiva (s\u00f3 age se o plugin do Melhor Envio estiver de fato instalado) e n\u00e3o afeta os simuladores de carrinho e checkout, que j\u00e1 usavam o carrinho real e n\u00e3o eram afetados por este bug.<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>Corrigido bug cr\u00edtico: a simula\u00e7\u00e3o de frete (produto, carrinho e checkout) falhava com mensagem de erro apenas para visitantes n\u00e3o logados, enquanto funcionava normalmente para administradores\/usu\u00e1rios logados \u2014 em lojas usando Melhor Envio, Frenet ou outras transportadoras de terceiros. Causa: nossas rotas AJAX passam por <code>admin-ajax.php<\/code>, que n\u00e3o garante o carrinho\/sess\u00e3o\/cliente do WooCommerce (<code>WC()-&gt;cart<\/code>, <code>WC()-&gt;session<\/code>, <code>WC()-&gt;customer<\/code>) totalmente inicializados para um visitante an\u00f4nimo sem sess\u00e3o pr\u00e9via \u2014 o que fazia integra\u00e7\u00f5es de frete de terceiros lan\u00e7arem exce\u00e7\u00e3o. Agora o plugin chama <code>wc_load_cart()<\/code> (fun\u00e7\u00e3o oficial do WooCommerce para esse cen\u00e1rio) no in\u00edcio de cada rota AJAX de frete, garantindo esses objetos dispon\u00edveis para qualquer visitante, logado ou n\u00e3o.<\/li>\n<li>Corrigido: ao selecionar um frete simulado no checkout usando um CEP diferente do que j\u00e1 estava preenchido no formul\u00e1rio de endere\u00e7o, o WooCommerce recalculava o pedido usando o CEP antigo do formul\u00e1rio (n\u00e3o o CEP selecionado), fazendo o valor do frete divergir do que foi escolhido. Agora, ao selecionar, o CEP da simula\u00e7\u00e3o \u00e9 sincronizado com os campos reais de cobran\u00e7a\/entrega antes do rec\u00e1lculo.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>Nova funcionalidade: cada op\u00e7\u00e3o de frete simulada no <strong>Carrinho<\/strong> e no <strong>Checkout<\/strong> agora tem um bot\u00e3o \"Selecionar\" \u2014 clicar nele aplica de verdade aquele m\u00e9todo de frete ao pedido (usando o mesmo mecanismo nativo de sess\u00e3o do WooCommerce que os bot\u00f5es de r\u00e1dio de frete usam), em vez de a simula\u00e7\u00e3o ser apenas informativa. O CEP e o m\u00e9todo s\u00e3o sempre revalidados no servidor no momento da sele\u00e7\u00e3o.<\/li>\n<li>No checkout, selecionar um frete simulado atualiza automaticamente a etapa \"M\u00e9todo de Entrega\" nativa (via evento <code>update_checkout<\/code>); no carrinho, a p\u00e1gina \u00e9 atualizada para refletir a nova escolha nos totais.<\/li>\n<li>A caixa da p\u00e1gina de produto permanece apenas informativa, j\u00e1 que o item ainda n\u00e3o est\u00e1 no carrinho nesse momento.<\/li>\n<li>Novas mensagens configur\u00e1veis: texto do bot\u00e3o \"Selecionar\", \"Aplicando frete...\" e \"Frete selecionado com sucesso!\".<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Atualizada a compatibilidade declarada para WordPress at\u00e9 a vers\u00e3o 7.0.3.<\/li>\n<li>Corrigido: em temas com estilos globais fortes para campos e bot\u00f5es, o visual do campo de CEP e do bot\u00e3o \"Calcular\" das caixas de frete era sobrescrito pelo tema (borda, placeholder e cor do bot\u00e3o inconsistentes). O CSS do plugin agora tem prioridade garantida sobre os estilos do tema.<\/li>\n<li>Corrigido o alinhamento vertical do texto do bot\u00e3o \"Calcular\", que podia aparecer descentralizado dependendo do tema.<\/li>\n<li>Removida a classe gen\u00e9rica <code>button<\/code> do bot\u00e3o \"Calcular\", que estava puxando o estilo padr\u00e3o do tema\/WooCommerce.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<p>Reformula\u00e7\u00e3o completa do plugin, unificando todas as evolu\u00e7\u00f5es feitas sobre a base da vers\u00e3o 1.5:<\/p>\n\n<p><strong>Arquitetura<\/strong>\n* Reescrita modular orientada a objetos: <code>autocep.php<\/code> (bootstrap), <code>class-autocep-admin.php<\/code> (painel), <code>class-autocep-api.php<\/code> (busca de CEP), <code>class-autocep-shipping.php<\/code> (frete), <code>class-autocep-logger.php<\/code> (diagn\u00f3stico).\n* Painel administrativo pr\u00f3prio, com abas: Geral &amp; Busca de CEP, Frete na P\u00e1gina de Produto, Frete no Carrinho, Frete no Checkout, Mensagens &amp; UX, Apar\u00eancia, Diagn\u00f3stico e Logs.<\/p>\n\n<p><strong>Busca de CEP<\/strong>\n* Cascata de tr\u00eas APIs (ViaCEP, BrasilAPI, ApiCEP) com prioridade configur\u00e1vel e fallback autom\u00e1tico.\n* Cache via Transients API, com dura\u00e7\u00e3o configur\u00e1vel e limpeza manual.\n* Aviso para CEPs sem rua cadastrada, e mensagem de erro vis\u00edvel para CEP inv\u00e1lido\/n\u00e3o encontrado.\n* Compatibilidade ampla com checkouts de terceiros via observa\u00e7\u00e3o autom\u00e1tica de mudan\u00e7as no formul\u00e1rio.\n* Autocomplete do navegador opcional nos campos de endere\u00e7o.<\/p>\n\n<p><strong>Frete<\/strong>\n* Tr\u00eas simuladores independentes: produto, carrinho e checkout \u2014 todos consultando as Zonas de Entrega do WooCommerce em tempo real, com suporte a produtos vari\u00e1veis, cupons aplicados e prazo de entrega.\n* Compatibilidade com m\u00e9todos de frete de terceiros (Melhor Envio, Frenet e outros), com tratamento robusto de falhas e desativa\u00e7\u00e3o autom\u00e1tica da caixa nativa do Melhor Envio para evitar duplicidade visual.\n* Compatibilidade retroativa com o shortcode <code>[shipping_calculator_on_product_page]<\/code> do plugin de calculadora de frete anterior.<\/p>\n\n<p><strong>Apar\u00eancia<\/strong>\n* Redesenho das caixas de frete: visual compacto e moderno, cores personaliz\u00e1veis via seletor nativo do WordPress.<\/p>\n\n<p><strong>Diagn\u00f3stico<\/strong>\n* Verifica\u00e7\u00e3o de status em tempo real das APIs de CEP e log de falhas.<\/p>\n\n<h4>1.5<\/h4>\n\n<ul>\n<li>Vers\u00e3o legada: autocompletar endere\u00e7o no checkout via API OpenCEP.<\/li>\n<\/ul>\n\n<p>Obrigado por usar o <strong>AutoCEP<\/strong>.<\/p>","raw_excerpt":"O melhor plugin de CEP e frete do Brasil: autocompletar de endere\u00e7o, simulador e tabela de frete por CEP e peso. Completo e 100% gratuito.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/200895","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=200895"}],"author":[{"embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wanderson100"}],"wp:attachment":[{"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=200895"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=200895"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=200895"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=200895"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=200895"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/so.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=200895"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}