2
respostas

Cache nos celulares

Olá, pessoal. Boa noite.

Dúvida: as alterações que faço numa página eu só limpo o cache do site, dentro do próprio admin do WP, e vejo no computador de todos da mesma forma já atualizada. Mas no celular não! Fiz algumas alterações e no mobile ainda está da forma antiga. Só consigo ver a versão atualizada da página se eu for numa aba anônima. Tem alguma forma para limpar o cache também nos celulares quando a pessoa carregar o site?

Obrigada

2 respostas

Olá Priscila, Tudo bem?

Uma coisa que pode ser feita, mas recomendaria nesse caso apenas para desenvolvimento seria adicionar uma metatag no head do HTML do seu tema, para informar ao navegador que ele não deve fazer cache, isso pode ser feito adicionando a seguinte linha ao seu HTML entre <head> e </head>.

<html>
    <head>
        <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
        <!-- resto do HTML -->

Caso não queira mexer no tema você pode modificar o seu config.php declarando ou modificando a constante WP_CACHE.

<?php
// Outro código do config...
define('WP_CACHE', false);

Os navegadores devem evitar cachear o HTML gerado pelo wordpress agora.

Se ainda assim o Javascript ou CSS estiver sendo cacheado existe um truque que envolve modificar as referências do srcda tag script ou o href da tag link, neste caso você adiciona ao fim do caminho do arquivo o código ?versao=1 e vai incrementando o número a cada modificação, isso força o navegador a carregar o arquivo novamente, visto que ele não tem em cache a versão com o query parameter passado, o código ficaria algo como:

<link rel="stylesheet" type="text/css" href="<?= get_stylesheet_directory_uri() ?>/style.css?versao=1">

Query parameters são parametros passados no endereço de arquivos, eles são enviados ao servidor que pode ou não processar, neste caso o navegador entende a nova versão como um outro documento e tenta obter ele ignorando a versão em cache.

Espero ter te ajudado com estas dicas.

Abraços.

Olá, Rafael. Boa tarde. E tem como bloquear o cache apenas para dispositivos móveis? Obrigada