Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte geral sobre problemas técnicos para OpenCart v2.x.
Avatar do usuário
Por Smagicas
Mensagens
#73158
Olá,

Como vocês estão resolvendo sobre rastreamento depois das mudanças dos correios para essa função? Geralmente quem desenvolveu módulo para informar um link para rastreio ao cliente usou esse link: http://websro.correios.com.br/sro_bin/t ... 32699093CN Mas depois da alteração que os correios estão fazendo nenhum está funcionando mais.

Eu sempre usei um módulo disponibilizado pelo Guicampos no Opencart.com e sempre funcionou perfeito para o que eu preciso que é apenas informar o código do rastreio no histórico do pedido ao cliente, e esse código é um link em azul que ao clicar nele o cliente já tem as situações de todos os movimentos da entrega, no entanto parou de funcionar devido as alterações que os correios fizeram. Alguém tem alguma dica se tem alguma modificação apenas para poder informar o código ao cliente com link?
Por walmirsarris
#73169
nenhum rastreamento funciona mais. o meu tambem não dá mais acesso. ao invés de entrar na página do rastreamento entra uma página do correio informando que tem que ter cadastro com eles para rastrear. agora para rastrear tem que entrar no site deles mesmo, não tem mais jeito de funcionar com extensão pelo jeito.
Avatar do usuário
Por Smagicas
Mensagens
#73197
wimza escreveu:Se alguém tiver alguma solução também preciso...
Eu acredito que a curto prazo ninguém sabe sobre isso não, pelo que eu entendi os correios bloquearam para quem quiser rastrear ter que entrar no site deles e do jeito que estava a nossa loja mandava em link direto. Mas como tudo alguém quebra o bloqueio, um dia farão uma nova extensão e quem sabe funcionará novamente.
Avatar do usuário
Por reds
Mensagens Especiais
#73198
Ola,

Uma forma de faze-lo e utilizando o esquema abaixo:

Rastreio Correios (pós atualização)

1 - dentro do diretório principal da loja cria um arquivo nome sro.php
De forma que consiga acessar ele no formato: http://www.minhaloja.com.br/sro.php
Código: Selecionar todos
<?php
	$url = "http://www2.correios.com.br/sistemas/rastreamento/resultado_semcontent.cfm";
	$obj = isset($_REQUEST['objeto'])?$_REQUEST['objeto']:'';
?>
<form name="rastrear" method="post" action="<?php echo $url;?>">
	<input type="hidden" name="Objetos" value="<?php echo $obj;?>">
</form>
<script>
	window.onload = function(){
	  document.forms['rastrear'].submit()
	}
</script>


2 - salve o arquivo e coloque na raiz do site.
3 - agora é só testar, é bem simples basta apenas enviar por GET ou POST uma var de nome 'objeto' para o link de acordo o padrão de sua loja, no caso no formato: http://www.sualoja.com.br/sro.php
Exemplo passando via GET: http://www.sualoja.com.br/sro.php?objeto=PL669830150BR

Obs: caso utilize alguma modificação que pegue automaticamente o código quando postado no pedido, precisa alterar a url para funcionar.
Código: Selecionar todos
<a href="http://www.minhaloja.com.br/sro.php?objeto=<?php echo $history['cod-rastreio']; ?>" target="_blank">
<?php echo $history['cod-rastreio']; ?></a>
Espero que ajude.
:ugeek:
juliocesar757 gostou disso
Avatar do usuário
Por Smagicas
Mensagens
#73205
Grande reds, testei a sua solução que postou acima e funcionou perfeito, no entanto faltou apenas um pequeno detalhe, colocando na edição do histórico do pedido o link que você postou acrescido do código do rastreio o cliente recebe o e-mail com o link clicável e funciona correto, no entanto no histórico do pedido ele não tem esse link clicável que geralmente fica em azul, o link fica em linha simples e obriga o cliente copiar e colar no navegador para poder rastrear, o restante tudo perfeito. Como eu uso um script que adiciona automaticamente os textos para cada status que você mesmo ajustou para funcionar como eu precisava, o qual fiquei muito grato, então eu coloquei nesse script o link e quando vou editar o pedido para o status do rastreio o link já está lá, é só eu colocar o código e o cliente recebe o e-mail com o link completo para rastrear perfeitamente, infelizmente não oferece o link clicável na conta do cliente como eu disse. Antes eu usava essa extensão abaixo muito eficiente que coloca o código em forma de link clicável tanto no admin como na conta do cliente, mas depois das alterações dos correios não funciona mais, eu tentei alterar o link na extensão como você informou mas não funcionou, a extensão é essa:
https://www.opencart.com/index.php?rout ... h=rastrear

Ah! e eu testei o seu módulo que disponibilizou para outro usuário de um post recente aqui sobre aumentar para 100% a largura da loja no navegador e funcionou perfeito. Eu até deixei um café com torradas pago lá para você em forma de agradecimento.
Por ClediomarCD
#73450
Excelente solução. Agora peguei esta solução e bastou adicionar no envio dos email de minha loja por GET. Ou seja não preciso mais enviar diretamente o link dos Correios. Mais uma vez parabéns pela solução.
Por paulamine
#73608
Olá, primeiramente gostaria de agradecer imensamente pela ajuda.

Trabalho num escritório que sempre envio link dos correios com rastreio das documentações enviadas a clientes, mas agora ficou impossível com a suspensão do SRO e esse fórum me tirou uma baita dor de cabeça.

Eu sou uma secretaria (frontend aposentada) de meia tigela e enferrujada e que só faz copia e cola.

Testei o código e funcionou diretinho!
Minha dúvida é se da pra jogar tudo isso em um iframe em nosso site, pois gostaria que as informações do rastreio ficassem em uma página onde eu possa colocar nossos logos.

Se isso é possível gostaria de saber como envio a informação do form pro iframe, sem que mude da minha página para pagina dos correios. (testei aqui em um sistema que temos no escritório e a pagina do correio funcionou direitinho no iframe)
E se puder me ajudar mais ainda, há como colocar o código certinho para que copiar?

Mais uma vez agradeço pela solução.

Gente preciso de ajuda urgente. Na migraç&a[…]

Caro @reds , muito obrigado pela resposta.

PHP 8+ incompatibilidade

Toda tradução para a versão 3[…]

Ola @alex3257 Se você precisa apenas ver […]