Temas Filhos WordPress – Para que servem e como criar?

Tutorial sobre como criar um Tema Filho para seu Tema principal

Temas filhos WordPress

Se você quiser ter uma série de dores de cabeça com seu site WordPress, começa por alterar o tema de sua instalação sem criar um tema filho antes. Você precisa conhecer sobre TEMAS FILHOS!

Como dor de cabeça é algo que você não quer, esse artigo visa te explicar para que serve e como criar Temas Filhos e como esses temas podem salvar sua paz quando você precisa fazer uma modificação em seu site.

Muitas pessoas se queixam por terem perdidos suas alterações por total desconhecimento sobre os Temas Filhos. A queixa vão desde funcionalidades que deixaram de funcionar (códigos de terceiros que sumiram), até banners que sumiram das páginas.

Entender esse recurso te possibilita fazer alterações em um tema original do WordPress e não sofrer com as perdas destas em futuras atualizações.

Então simbora para o conteúdo!!!

O que é um Tema Filho?

A melhor definição para Tema Filho é definição encontrada no site oficial do WordPress:

“Um tema filho é um tema que herda as funcionalidades e estilos de outro tema, chamado de tema pai”.

Quando você cria um tema filho, ele é todo “baseado” em um tema já existente. No momento que você cria um Tema Filho o tema existente se torna Tema Pai.

Não existe Tema Filho sem Tema Pai, pois ele depende completamente de seu pai para funcionar. Ele não fará nada e nem poderá ser ativado, sem o tema original presente. 

O tema filho é quem vai receber as alterações no lugar do Tema Pai. Essa é a grande vantagem de usá-lo e é isso que vai livrar sua vida de certas dores de cabeça.

Você vai entender isso melhor no próximo tópico.

Por que usar temas filhos?

Existem dois grandes motivos:

O primeiro grande motivo é preservar as características e funcionalidades do tema pai que foram alteradas e que fatalmente seriam perdidas em uma atualização futura.

O segundo grande motivo é fazer alterações, mas considerando herdar as funcionalidades principais do tema original.

Quando usar um Tema Filho?

Você usará o Tema Filho quando você precisar entregar algo personalizado, mas de forma ágil e que mantenha as principais funcionalidades do tema original. Ou quando você precisar fazer pequenas alterações no tema.

Quando não é indicado usar Temas Filhos?

Não é indicado usar o tema filho quando você pretende alterar drasticamente o Tema.

Ao fazer isso você deixa de herdar as funcionalidades do tema principal e gasta muito tempo em desenvolvimento o que contraria uma das principais características do uso dos Temas Filhos que é a agilidade.

Neste caso é indicado que se construa um Tema do Zero.

Como criar um Tema Filho

Agora vamos para um passo a passo explicando como criar Temas Filhos e que você já poderá aplicar os conhecimentos adquiridos aqui em sua instalação.

Mas se você quiser aprender com mais riquezas de detalhes, no Curso Web Designer PRO temos um módulo inteiro sobre Temas Filhos.

Web Designer PRO- Treinamento online - Curso de web Design Online

1 – Criando a pasta do Tema

A primeira coisa é acessar o diretório na instalação WordPress onde se localiza os temas. Acessando, via FTP, o diretório onde se localiza os arquivos da instalação do WordPress, ele fica em “wp-content/themes”.

Na pasta “themes” você encontrará uma relação de temas. Você deve criar uma nova pasta neste diretório, pasta esta que receberá os arquivos do Tema Filho.

Você deverá renomear esta pasta para o nome que você pretende usar no Tema Filho. Não use espaços no nome para não ocasionar erros.

No exemplo deste artigo a pasta se chamará “fundamentos-do-design-theme” que corresponde a nome Fundamentos do Design Theme.

Esse pasta deverá possuir dois arquivos que você criará (style.css e functions.php) e que será o mínimo para que seu Tema Filho funcione.

Resumindo teremos:

  • a pasta do tema filho;
  • o arquivo style.css;
  • o arquivo functions.php.

2 – Criando a folha de estilos (style.css)

O arquivo “style.css” é obrigatório para que o Tema Filho funcione.

Você pode usar um editor HTML para criar esse arquivo. Com bloco de notas já é possível criar este arquivo se certificando que a extensão seja “.css”.

No topo do arquivo deverá ser inserido um cabeçalho com informações sobre o novo tema e referenciando o Tema Pai.

No nosso exemplo, o Tema Filho será construído a partir do tema “Twenty Twenty” que é um tema padrão do WordPress e que deve estar presente na instalação.

No seu caso você terá um tema próprio a qual pretenderá criar o Tema Filho.

Vamos ao exemplo (leia cada instrução):

/*
Theme Name: Fundamentos do Design Theme (Aqui vai o nome do Tema Filho)
Theme URI: https://wordpress.org/themes/twentytwenty/ (Aqui vai o endereço do Tema no Diretório de Temas do site do WordPress, caso houver)
Description: Twenty Twenty Child Theme (Aqui descreve que o Tema é filho do tema Twenty Twenty)
Author: David Arty
Author URI: https://davidarty.com (Site do autor do tema)
Template: twentytwenty (Parte fundamental e obrigatória para o funcionamento - Este nome corresponde ao nome da pasta do Tema Pai)
Version: 1.0.0 (Versão)
License: GNU General Public License v2 or later (Licença)
License URI: http://www.gnu.org/licenses/gpl-2.0.html (Endereço da Licença)
Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready (Tags que descrevem características do Tema)
Text Domain: twentytwenty (Possibilita que os metadados do tema seja traduzidos)
*/

Na verdade, grande parte deste código não é necessário, caso seu tema não seja distribuído para comunidade. Então você pode resumi-lo com as partes mais importantes para a funcionalidade do tema. Veja a seguir:

/*
Theme Name: Fundamentos do Design Theme
Description: Twenty Twenty Child Theme
Template: twentytwenty
Text Domain: twentytwenty
*/

Reforço aqui atenção para o nome presente na linha Template. Este nome deve corresponde ao nome da pasta do Tema Pai para que tudo funcione.

As próximas linhas do arquivo são dedicadas aos estilos CSS que irão substituir os estilos do Tema Pai.

Após essa edição no arquivo você deve subi-lo para sua hospedagem, na pasta do tema filho, e poderá ativar o Tema no WordPress.

Tema filho para ativar

Na hora que você for ativar o Tema Filho no painel do WordPress, lá em Aparência/Temas, você notará que ele não tem uma capa. Mas resolveremos esta questão em um tópico mais a frente.

Você também poderá também testar o tema novo visitando uma página do site. E se surpreenderá com uma página sem estilo algum.

Página sem estilos CSS
Página sem estilos CSS

Mas não se preocupe! Estamos no caminho certo! Isso será corrigido na próxima etapa ao enfileirar os arquivos CSS usando o arquivo “functions.php”.

3 – Enfileirar as folhas de estilo do tema pai e do tema filho através do arquivos “functions.php”

O “functions.php” é um arquivo presente em seu tema WordPress, e ele é carregado antes de qualquer arquivo de template do tema.

Este arquivo é poderoso, pois ele determina diversas funcionalidades de um tema. Para quem tem conhecimentos avançados de PHP e da documentação do WordPress será possível usar este arquivo para substituir, ou editar funcionalidades presentes no Tema Pai.

Mas aqui usaremos para enfileirar as folhas de estilo usando wp_enqueue_scripts action e wp_enqueue_style() no tema filho.

Crie um arquivo chamando “functions” em seu editor e salve com a extensão “.php”. Insira o código a seguir:

<?php function theme_enqueue_styles() { 

$parent_style = 'parent-style'; 

wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' ); 
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array( $parent_style ) 
  ); 
} 
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' ); 
?>

Após a edição suba o arquivo “functions.php” para a pasta do Tema Filho em sua hospedagem para testar.

Uma coisa importante a frisar é que diferentemente do que ocorre com os estilos, o “functions.php” do Tema Pai é carregado antes do que o do Tema Filho.

Veja agora que ao visitar uma página do site o estilo visual será carregado. Mas, apesar de ser o mesmo do Tema Pai, o estilo que predomina sempre será do Tema Filho.

O que acontece é que no momento estão sendo carregados os estilos do Tema Pai. Mas basta sobrescrevê-los alterando valores das propriedades no arquivo “style.css” do Tema filho e que o visual se modifica.

Testando um tema filho com pequenas alterações

Para verificar a efetividade da criação do Tema Filho você pode testar fazendo certas edições. Para isso você deve dominar no mínimo as Linguagens CSS e HTML.

Existem diferentes níveis de edição para um Tema Filho de acordo com a complexidade.

Edições de complexidade baixa

Onde você edita com CSS algum elemento HTML existente no Tema Pai sem alterar ou outros Elementos HTML.

Um exemplo simples que serve para testar se o tema filho está funcionando é alterar a cor de um título de uma página. Veja um exemplo a seguir.

Passo 1:

Primeiro inspecionamos o elemento HTML através do Inspetor do navegador em uso para identificar o nome do seletor CSS.

Inspecionando elemento HTML

Passo 2:

Agora pegamos os seletor identificado no código HTML e o usamos para definir uma nova cor para o títulos através de CSS no arquivo “style.css” do Tema Filho.

estilizando titulo da página

Salvamos o arquivo e subimos para pasta do Tema Filho. Recarregamos a página para averiguar se o título principal mudou para cor vermelha.

Página com mudança de cor (vermelha) no título da página

A mudança da cor do título para a cor vermelha é a confirmação final de que o Tema Filho está funcionando.

Se você conseguir chegar até aqui você está habilitado para configurar um Tema Filho.

O que foi exposto até este momento é fundamental para que partir deste ponto possa se fazer alterações mais complexas. Entretanto os tipos de edição tratadas a seguir seria indicado conhecer um pouco de PHP.

Edições de complexidade média

Esta edição é quando você precisa alterar um elemento HTML em um arquivo PHP do tema. Neste caso é preciso subir uma cópia do arquivo do Tema Pai para a pasta do Tema Filho.

Os temas WordPress são compostos por diversos arquivos de modelos em PHP (além de CSS e JS). São arquivos modulares e reutilizáveis, usados ​​para gerar as páginas da web em seu site WordPress. Alguns arquivos de modelo (como o modelo de cabeçalho e rodapé) são usados ​​em todas as páginas do seu site, enquanto outros são usados ​​apenas em condições específicas.

Você poderá ver a relação destes arquivos na Hierarquia de Modelos no site WordPress.

As alterações destes arquivos serão feitas no Tema Filho. Ao subir um destes arquivos para a Pasta do Tema Filho ele assumirá todas as funções em detrimento do arquivo existente no Tema Pai.

Use esse recurso com parcimônia. Se você acredita que deva editar uma quantidade muita grande de arquivos que compõem o Tema, considere se não é mais adequado criar um Tema do zero em vez de um Tema Filho.

Sem contar que qualquer ajuste que o desenvolvedor do Tema fizer em algum arquivo original não será repassado para o Tema Filho em futuras atualizações. O Tema filho só herda as funcionalidades do arquivos que estão somente no diretório do Tema Pai.

Um exemplo simples é incluir um subtítulo (tags Headline) no arquivo responsável por exibir o cabeçalho do site (header.php).

Observação: Para não ocorrer um erro PHP evite fazer edição entre as tags de abertura e fechamento do PHP (“<?php” e “?”>) se você não tem certeza do que está fazendo.

Edições de alta complexidade

Aqui você precisa de bons conhecimentos de PHP e da documentação WordPress.

Este tipo de edição visa alterar alguma linha de código PHP em um arquivo específico e como no tópico anterior deve ser usado com parcimônia. Ou alterar uma funcionalidade do tema pai através do arquivo “functions.php” ou também incluir uma funcionalidade nova.

Vídeo tutorial de configuração de Temas Filhos

Para reforçar o que você aprendeu aqui no artigo disponibilizo a seguir um vídeo que mostra a configuração de um Tema Filho de forma prática. Confira!

Conclusão sobre Temas Filhos

Se você precisa fazer alterações pontuais e não quer que essas alterações sejam perdidas em atualizações futuras o uso de Temas Filhos WordPress é o caminho a seguir.

É comum pessoas e queixarem por terem perdidos alterações em seus sites WordPress e os Temas Filhos tem função de evitar isso. Mas como citado no artigo, use de forma consciente para não perder todo o potencial do Tema principal e de forma que faça o processo de desenvolvimento ser ágil para seu projeto.

Agora me diga nos comentários o que você acha sobre os Temas Filhos.

Aproveite e compartilhe esse conteúdo com seus amigo!!!

Abraço!!

Ed Francisco

Olá! Aqui é Ed Francisco, colaborador do Chief of Design desde suas primeiras linhas de conteúdo e de códigos.

Por falar em códigos, acredito que o HTML é a mais notável tecnologia web a qual me permitiu chegar aqui onde estou, e também escrever essas linhas sobre mim para você.

Sou formado em Tecnologia da Produção (foi aqui que conheci o HTML) e em Técnico em Produção Digital, Web e Multimídia (onde aperfeiçoei os meus conhecimentos de HTML).

Sou Paulistano da Zona Leste. Me aventuro tentando desvendar os mistérios da web desde 2008.