Tag Archives: child themes

Temas e WordPress 3.0 algumas alterações importantes

Algumas das novidades do WordPress 3.0  são alterações no desenvolvimento de temas. Abaixo segue a tradução do post Themes and WordPress 3.0 some important changes do Peter Westwood, um dos desenvolvedores do core, explicando como serão estas alterações.

Durante o desenvolvimento do WordPress 3.0 nós fizemos várias alterações não evidentes aos usuários finais, que serão do interesse dos desenvolvedores e usuários de temas.�� Algumas destas alterações são sobre facilitar o desenvolvimento de temas e algumas são sobre facilitar o suporte à substituição de partes de temas.

1) get_template_part – [13146], #12371

A primeira alteração, que deve facilitar o desenvolvimento de temas flexíveis e extensíveis, é a introdução do get_template_part(), que foi introduzido como uma forma genérica de modularizar temas um passo além dos arquivos básicos footer/body/header.  Esta nova função torna muito fácil reutilizar blocos de código, implementando áreas como o loop do WordPress, de uma forma que facilita a substituição por implementações feitas por child themes (temas filho), de um modo sensível ao contexto.

Esta função é muito fácil de se usar você cria um arquivo dentro de seu tema contendo o código que você quer reutilizar e em seguida o insere da seguinte maneira:

[sourcecode language="php"]get_template_part( loop, author ); // Pull in the loop for the author archives[/sourcecode]

A função procurará pelos arquivos loop-author.php e loop.php, primeiramente na pasta de tema atual, antes de procurar na pasta do parent theme (tema pai), se este existir.  O novo tema TwentyTen no WordPress 3.0 usa esta função toda vez que chama o seu loop.php para facilitar a substituição em uma única instância do child theme.

2) Tornando obsoletos os temas muito básicos [14365], #12425

A outra alteração é tornar obsoletos os temas muito básicos.  Antes do WordPress 3.0 qualquer tema que não tivesse qualquer dos seguintes arquivos modelos – header.php, footer.php, sidebar.php, comments.php, comments-popup.php – se comportaria efetivamente como se tivesse um parent theme definido como padrão, usando os arquivos relevantes do antigo tema padrão.

Agora que estamos caminhando para um novo tema padrão, nós não queríamos ter que suportar este comportamento bastante velho indefinidamente ou deixar que os arquivos do tema TwentyTen fossem usados, como se eles tivessem um layout diferente e quisessem mudar os sites existentes das pessoas.

Indo mais longe, um tema completo do WordPress deve conter todos estes arquivos, ou tê-los fornecidos por um parent theme, e os arquivos de compatibilidade de temas inclusos no WordPress 3.0 serão removidos em uma versão futura.

Se você estiver usando um tema afetado por esta alteração, você precisa apenas certificar-se de ter o tema padrão instalado – ele não será incluso nas instalações novas, mas será preservado nas atualizações. Em seguida, adicione o seguinte código ao topo do style.css de seu tema para que o tema padrão seja usado como seu parent theme:

[sourcecode language="css"]Template: default[/sourcecode]

Mais informações sobre o processo de indicar um parent theme em um arquivo style.css de child themes está disponível no codex.