Criar um child theme para o seu tema WordPress
Se alterar diretamente os ficheiros de um tema, perderá o seu trabalho na próxima atualização desse tema. Um tema filho evita que isso aconteça. Trata-se de um pequeno tema que herda tudo de outro tema, o tema pai, exceto aquilo que o próprio utilizador lá colocar. O tema pai continua a poder ser atualizado normalmente. Aqui fica a saber quando precisa de um tema filho e como criá-lo com o Gestor de Ficheiros do DirectAdmin.
Precisa de um tema filho?
| Pretende | Precisa de um tema filho? |
|---|---|
| Personalizar um tema de blocos no Editor do site (Aspeto > Editor): cores, tipos de letra, cabeçalho e rodapé | Não. Essas personalizações ficam guardadas na base de dados e mantêm-se após uma atualização. |
| Adicionar algumas linhas de CSS | Não. Utilize o CSS adicional no Personalizador (tema clássico) ou em Estilos no Editor do site. |
| Adicionar uma funcionalidade que nada tem a ver com o design, como uma integração ou um formulário | Não. Isso deve ficar num plugin, para que continue a funcionar após uma mudança de tema. |
| Alterar um ficheiro de modelo do tema, muito CSS próprio, ou código PHP relacionado com o design | Sim. |
Utiliza um tema de blocos? Experimente primeiro no Editor do site. Se pretender guardar em ficheiros as personalizações feitas no Editor do site, o plugin oficial Create Block Theme pode criar um tema filho por si.
Passo 1: localize a pasta do tema pai
- No DirectAdmin, abra o Gestor de Ficheiros. Consulte Abrir o Gestor de Ficheiros: as pastas do seu pacote.
- Aceda a
domains/example.com/public_html/wp-content/themes. - Anote o nome exato da pasta do seu tema, por exemplo
hoofdthema. Trata-se do nome da pasta, não do nome que vê no WordPress.
Passo 2: crie a pasta e o ficheiro style.css
- Na pasta
themes, clique em Nova Pasta e crie, por exemplo,hoofdthema-child. - Abra essa pasta, clique em Novo Ficheiro e crie
style.css. - Clique com o botão direito do rato no ficheiro, escolha Editar, cole o cabeçalho abaixo e clique em Guardar.
/* Theme Name: Hoofdthema Child Template: hoofdthema Description: Eigen aanpassingen voor example.com Version: 1.0.0 */ /* Je eigen CSS komt hieronder. */
A linha Template: é a mais importante. Deve conter exatamente o nome da pasta do tema pai, com as mesmas maiúsculas e hífenes. Se não estiver correto, o WordPress indicará que o tema pai está em falta.
Passo 3: functions.php ou theme.json
Tema clássico: crie na mesma pasta um ficheiro functions.php que carregue a sua folha de estilos:
<?php
add_action( 'wp_enqueue_scripts', function () {
wp_enqueue_style(
'hoofdthema-child',
get_stylesheet_uri(),
array(),
wp_get_theme()->get( 'Version' )
);
} );
Se o tema pai carrega ou não a sua própria folha de estilos varia de tema para tema. Consulte a documentação do seu tema. Se, após a ativação, o seu site parecer despido de estilo, terá de carregar também a folha de estilos do tema pai, com get_template_directory_uri() . '/style.css'. O functions.php do tema filho não substitui o do tema pai: ambos são carregados, primeiro o do tema filho. Por isso, nunca copie funções do functions.php do tema pai, pois nomes de funções duplicados provocam um erro crítico.
Tema de blocos: normalmente não é necessário um functions.php. Se pretender, por exemplo, uma paleta de cores diferente, crie o seu próprio theme.json. O WordPress combina-o com o do tema pai, pelo que basta incluir aquilo que pretende alterar.
Se pretender alterar um modelo, copie apenas esse ficheiro do tema pai para o mesmo local no tema filho e altere a cópia. O WordPress procura primeiro no tema filho e depois no tema pai. Não copie tudo, caso contrário deixará de receber as melhorias do tema pai.
Passo 4: ativar
- No WordPress, aceda a Aspeto > Temas. O seu tema filho aparece na lista. Clique em Ativar.
- Verifique o seu site: cabeçalho, menus, widgets e cores. Se necessário, volte a configurar os menus e as definições do Personalizador.
- Mantenha o tema pai instalado e atualizado. Sem o tema pai, o tema filho não funciona.
Prefere criar o tema filho no seu próprio computador? Nesse caso, comprima a pasta num ficheiro zip e carregue-o no WordPress em Aspeto > Temas com o botão Adicionar tema e, em seguida, Carregar tema. Em alternativa, carregue a pasta com o Gestor de Ficheiros ou por SFTP para wp-content/themes, consulte Carregar e descarregar ficheiros.
Voltar ao tema anterior
Em Aspeto > Temas, ative novamente o tema pai. Se, devido a um erro no tema filho, já não conseguir aceder à administração, mude o nome da pasta do tema filho no Gestor de Ficheiros, por exemplo para hoofdthema-child-uit. O WordPress passa então a utilizar um tema predefinido, desde que ainda esteja instalado. Saiba mais em Erro 500 ou "erro crítico" no seu website (também após uma atualização do WordPress).
Leitura adicional
- Child themes em developer.wordpress.org (em inglês)
Quer aprender mais? Siga o curso gratuito de WordPress, lição 5.2 Criar um tema filho.
