Personalizando um tema WordPress sem alterá-lo?

19

Eu encontrei e baixei um tema. No entanto, eu quero ajustar o CSS para mudar um pouco o design, as cores etc. Como devo fazer isso, enquanto ainda consigo atualizar o tema sem perder as alterações.

googletorp
fonte

Respostas:

21

Embora não seja possível modificá-lo sem alterá-lo, você pode isolar as partes alteradas criando um Tema filho. Em suma:

  1. Crie um diretório de temas no mesmo nível com o seu tema "pai",
  2. Crie um style.cssarquivo no seu novo diretório que tenha uma Template:declaração nos comentários nomeando o tema pai e @import url(../%parent-theme%/style.css)para importar o CSS do tema pai,
  3. Ative seu novo tema no console administrativo do WordPress,
  4. Adicione novos arquivos e / ou copie arquivos do diretório de temas pai para o diretório de temas filhos e modifique-os de acordo com sua preferência e
  5. É isso aí!

Eu poderia lhe dar muito mais detalhes, mas basicamente esse cara faz um trabalho muito bom em explicar Como criar um tema infantil tão melhor para mim, apenas para apontá-lo para ele.

Quando você deseja atualizar o tema pai, basta atualizar; isso deixará o tema do seu filho intacto. É claro que o tema filho pode não funcionar perfeitamente se eles mudaram muito o pai e / ou se você copiou e modificou os arquivos de tema atualizados na nova versão, você não obterá a nova funcionalidade sem modificá-los também, mas é um muito melhor a partir de cada vez!

Espero que ajude.

MikeSchinkel
fonte
2
Temas infantis são o caminho a seguir IMHO
Ryan Gibbons
2

Se tudo o que você deseja alterar é um pouco de CSS, é possível criar um arquivo CSS personalizado dentro do diretório do tema. Inclua seu arquivo css personalizado no cabeçalho do tema e escreva novas declarações apenas no arquivo css personalizado, substituindo, assim, as declarações css padrão do tema.

Folha de estilo padrão

body{background:white;width: 960px;margin: 25px auto;}

Folha de estilo personalizada

body{width:800px;}

Seu navegador fará chamadas http separadas para as duas folhas de estilo e aplicará os estilos na ordem em que estão listados. Quaisquer que sejam as declarações feitas por último, substituirão as declarações feitas antes delas. Portanto, certifique-se de incluir sua folha de estilo personalizada após a inclusão de outras folhas de estilo no header.php.

Se você acabar alterando arquivos de modelo como archive.php ou page.php, a resposta de MikeSchinkel permitirá que você atualize seu tema se uma nova versão for lançada, sem perder suas modificações. Mas se tudo o que você deseja é alterar alguns css, esse método funcionará bem. Apenas certifique-se de salvar sua folha de estilo personalizada antes de atualizar o diretório do tema.

kevtrout
fonte
1
Isso pode ser problemático se o tema modificado não for o seu tema, portanto, suas alterações poderão ser substituídas nas atualizações de temas.
hakre 6/09/10
1

Você pode definitivamente criar um tema filho. Um tema filho mantém seu tema principal em seu formato original.

O que eu pessoalmente faço é que estou usando um tema WordPress premium do MyThemeShop . Nesse aspecto, mantenho meu arquivo style.css e as opções de tema como estão. Apenas copio os dados do arquivo para outro arquivo e o nomeio um pouco diferente. Por exemplo, se eu estiver usando o Tema SociallyViral, para criar seu tema filho, copiarei os dados do arquivo style.css e os salvei em outro arquivo chamado childstyle.css.

Depois disso, agora projetarei funções específicas e posso redesenhar meu tema adicionando mais funcionalidades ao arquivo childstyle.css.

Isso mantém meu arquivo style.css original como está e me permite atualizá-lo no formato original.

Sumit Kumar
fonte
Não sei ao certo o que você quer dizer com "Copiarei os dados do arquivo style.css", mas geralmente basta adicionar esses estilos ao tema filho que são diferentes do pai - os estilos do tema filho são adicionados e / ou substitua os estilos dos pais. A propósito: como sua resposta adiciona algo à resposta que já foi aceita há mais de 6 anos ?!
tillinberlin