No header.php, gosto de atribuir um número de versão à folha de estilo para que o navegador seja forçado a atualizá-lo. Mas, ao trabalhar com um tema filho, sua folha de estilo não é chamada explicitamente, mas o WordPress o procura automaticamente. Então, como ou onde atribuir um número de versão à folha de estilo do tema filho?
child-theme
css
drake035
fonte
fonte
Eu acho que a melhor maneira de fazer isso é deixar a folha de estilo do tema filho (style.css) vazia com apenas os comentários necessários (como nome do tema, descrição etc., para que o wordpress reconheça o seu tema) e crie outro arquivo css no seu- pasta-nome-do-tema / css / main.css
Depois disso, em function.php, você pode ter uma nova "versão" toda vez que alterar seu arquivo:
A lógica:
Toda vez que você salva o arquivo, a hora modificada do arquivo está sendo alterada. A nova hora está sendo passada para a função date para converter a hora (filemtime retorna um número inteiro que representa a hora) para o formato de data para torná-la uma sequência no formato desejado. No nosso exemplo, o tempo está sendo formatado com precisão de minutos. Você pode alterá-lo para rastrear até o segundo, ou seja.
"YmdHis"
Depois que o novo horário modificado do arquivo estiver sendo passado como uma nova versão parawp_enqueue_style
.Referência:
http://www.php.net/filemtime
http://php.net/manual/en/function.date.php
fonte
$cache_buster = wp_get_theme()->get('Version')
obterá a versão especificada no bloco de comentáriosstyle.css
. Veja codex.wordpress.org/Function_Reference/wp_get_theme para referência.wp_get_theme()->get('Version')
funciona dessa maneira).O que você precisa fazer é cancelar o registro do estilo principal pelo identificador e, em seguida, registrar novamente com o número da sua versão. Nesse caso, o identificador é
style-css
.Você pode determinar o identificador que precisa usar olhando para o link da folha de estilo renderizada:
Aqui o id é o
style-css-css
que significa que nosso identificador éstyle-css
Coloque isso no function.php do seu filho-tema:
fonte
A resposta principal atual é dependente do tema, pois exige que o desenvolvedor do tema tenha transformado o número da versão do tema filho em uma variável e, em seguida, anexado ao filho style.css ao colocá-lo na fila. Eu já vi isso em alguns temas, mas não em muitos. O seguinte funciona em qualquer tema que registre os estilos filhos em functions.php - não funcionará com a antiga regra @import, que eu não via muito mais.
Em functions.php do tema filho, você deve ter algo semelhante a este:
Se você alterá-lo para o seguinte, ele acrescentará um carimbo de data e hora como número da versão sempre que o arquivo for salvo, permitindo que cada alteração da folha de estilo seja interrompida pelo cache local:
Espero que isso ajude alguém. Eu uso isso em todos os sites que eu gerencio ativamente.
fonte
Acredito que se você usar o editor de temas do Wordpress para editar a folha de estilo do tema filho, ele anexará automaticamente um novo número de versão cada vez que você salvar o arquivo.
fonte
Em vez de usar o style.css padrão, eu normalmente uso wp_enqueue_style no functions.php do tema filho ou em outro arquivo php incluído. Portanto, você ainda teria o style.css no tema filho com todos os detalhes do tema filho, mas poderá ter um arquivo css separado no tema filho para o estilo real do tema filho (eu costumo colocar isso em assets / css diretório dentro do tema filho). Isso também permitiria definir a versão CSS com o 4º parâmetro. Por exemplo:
Você pode adicionar uma prioridade à ação se ela não estiver carregando na ordem correta ou trabalhar com o parâmetro de dependência em wp_enqueue_style acima:
fonte