O que é um child theme e porque precisas de o usar

patent theme child theme

Em 2013, 85 por centos dos utilizadores de WordPress disse personalizar os seus temas. Mas só 35% usaram um child theme para o fazer.

Para começo de conversa, isto é mau.

Quem chega ao WordPress mais cedo ou mais tarde ouve falar de child themes (tema filho ou tema dependente) e da importância de os utilizar. Há fortes razões para isso.

O que é um child theme?

Child Themes são temas que, por um lado, herdam e, por outro lado, sobrepõem os estilos e as páginas modelo do tema pai ou tema principal.

Para exemplo vamos utilizar o actual tema base do WordPress, o Twenty Fifteen. Este é um tema pai (ou principal) e, como outros similares, não depende de nenhum outro para funcionar.

Já o tema filho ou dependente, por outro lado, depende totalmente do pai. Se tentares activar um child theme do Twenty Fifteen mas não tiveres o pai, a resposta vai ser uma mensagem de erro. Daí ser um tema dependente.

O child theme é utilizado para permitir a personalização do parent sem ter de lhe mexer.

Como acontece com o WordPress e os plugins, os temas também registam actualizações mais ou menos regulares. Se alterares os ficheiros do tema pai, vais perder essas mudanças sempre que houver uma actualização. É claro que podes voltar a inserir todas as alterações que fizeste nos ficheiros mas, além de ser um processo delicado, pode também ser fastidioso e demorado se fizeste várias modificações. E a probabilidade de falhares algo é grande.

O child theme evita essa situação porque é o local onde implementas todas as personalizações. Tudo graças à hierarquia de modelos (template) do WordPress.

Quando um conteúdo, como uma página ou artigo, precisa de ser apresentado ao visitante, o WordPress vai em busca do modelo adequado. E vai procura-lo no child theme. Se não encontrar segue, então, rumo ao parent.

Portanto, aquilo que estiver no child sobrepõe-se, sejam os estilos, templates ou funções.

Como criar um Child Theme

O processo de criar um child theme não é complicado. O Codex do WordPress, o local ideal para esclarecer todas as dúvidas, explica que basta criar um directório e lá colocar dois ficheiros: style.css e functions.php.

O directório tem de ser colocado em wp-content/themes e é desejável que o seu nome corresponda ao do tema pai acrescentando-se um simples ‘-child’ no final.

O passo seguinte é criar a folha de estilos, o style.css. Este é o único ficheiro obrigatório no filho mas é boa ideia gerar de imediato o functions.php. Porque é este que vai acolher o código das funcionalidades que queremos implementar ou alterar. Além disso é necessário para fazer o enqueue do style.css de forma correcta. Isto é, ligar as folhas de estilo do child e do parent.

O anterior método preferido, usando o @import, já não é recomendado como sendo a melhor prática, tendo sido substituído pelo enqueue. A forma correcta é, pois, acrescentar uma acção wp_enqueue_scripts e usar wp_enqueue_style() no functions.php do child theme.

[code]add_action( ‘wp_enqueue_scripts’, ‘theme_enqueue_styles’ ); function theme_enqueue_styles() { wp_enqueue_style( ‘parent-style’, get_template_directory_uri() . ‘/style.css’ ); }[/code]

Se não estiveres à vontade com estas questões podes usar um plugin como o Child Theme Wizard.

José Freitas

José Freitas

Ajudo pequenas e médias empresas e empreendedores a criar estratégias online para conseguirem melhores clientes, através da comunicação relacional. Na minha vida passada fui jornalista durante 25 anos. A comunicação é a minha praia. Viciado em café intenso e aromático.

Queres receber as nossas mensagens semanais o teu email?

As nossas mensagens são compostas por pequenos textos escritos a pensar em ti (sim a sério, a pensar em ti).

Não enviamos SPAM porque também não gostamos de o receber.