{"id":3485,"date":"2014-09-05T15:19:20","date_gmt":"2014-09-05T18:19:20","guid":{"rendered":"http:\/\/blog.turbosite.com.br\/?p=3485"},"modified":"2014-09-05T15:19:20","modified_gmt":"2014-09-05T18:19:20","slug":"criando-um-tema-filho-child-theme-para-wordpress","status":"publish","type":"post","link":"https:\/\/www.turbosite.com.br\/blog\/criando-um-tema-filho-child-theme-para-wordpress\/","title":{"rendered":"Criando um tema filho (Child Theme) para WordPress"},"content":{"rendered":"<p>Saiba como criar temas filhos (child-theme) para o WordPress, um recurso important\u00edssimo que pode evitar dores e cabe\u00e7a e reprograma\u00e7\u00e3o.<\/p>\n<p>O processo de cria\u00e7\u00e3o \u00e9 bem simples e vamos explor\u00e1-lo nas linhas abaixo, vamos l\u00e1.<\/p>\n<h3>Imaginem duas situa\u00e7\u00f5es:<\/h3>\n<ol>\n<li>Voc\u00ea est\u00e1 criando um site em <a title=\"Wordpress\" href=\"http:\/\/wordpress.org\/\" target=\"_blank\">WordPress<\/a>\u00a0e \u00a0utilizando um dos milhares de temas pagos ou gratuitos (muito cuidado com temas pagos-gratuitos, se \u00e9 que me entende&#8230;). At\u00e9 a\u00ed tudo bem, certo? Voc\u00ea mexe no <em>style.css<\/em>,<em> functions.php<\/em> e at\u00e9 no <em>index.php<\/em> e outros arquivos de p\u00e1ginas. O site est\u00e1 rodando do jeito que voc\u00ea quer: perfeito! A\u00ed seu cliente clica em &#8220;atualizar&#8221; e BOOM! perdeu tudo. Todo o seu trabalho foi apagado!!<\/li>\n<li>Voc\u00ea tem uma rede de sites\/blogs numa instala\u00e7\u00e3o <a href=\"http:\/\/codex.wordpress.org\/Create_A_Network\" target=\"_blank\">Multisite<\/a>\u00a0e n\u00e3o quer todos os blogs iguais: vai criar um tema para cada site? Nossa&#8230; podem ser o que? 1000 temas?<\/li>\n<\/ol>\n<h3>Solu\u00e7\u00e3o<\/h3>\n<p>H\u00e1 v\u00e1rias solu\u00e7\u00f5es para esses problemas, mas entre elas a mais <del>anti-gambiarra<\/del>\u00a0elegante \u00e9 a utiliza\u00e7\u00e3o de um recurso do WordPress muito legal chamado <a href=\"https:\/\/codex.wordpress.org\/Child_Themes\" target=\"_blank\">Child Theme<\/a>\u00a0ou Tema Filho.<\/p>\n<p>Um Child Theme (prefiro usar os termos em ingl\u00eas para me acostumar na consulta do Codex) \u00e9 um tema derivado. Ele &#8220;sobrescreve&#8221; um outro tema, ou seja, voc\u00ea n\u00e3o vai ativar o pai, mas sim o filho, no menu<strong>\u00a0Apar\u00eancia &gt;&gt; Temas<\/strong>.<\/p>\n<p>&nbsp;<\/p>\n<h3>Vamos praticar:<\/h3>\n<p><strong>1\u00ba Passo: \u00a0<\/strong>Crie uma pasta no seu diret\u00f3rio de temas para guardar seu Child Theme, o Codex do WordPress e eu =D, aconselhamos que o nome seja <strong>nomedotema-child<\/strong>.<\/p>\n<p>Por exemplo:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-3486\" src=\"https:\/\/www.turbosite.com.br\/blog\/wp-content\/uploads\/2014\/09\/temas-child-dica-turbosite.png\" alt=\"temas-child-dica-turbosite\" width=\"558\" height=\"260\" srcset=\"https:\/\/www.turbosite.com.br\/blog\/wp-content\/uploads\/2014\/09\/temas-child-dica-turbosite.png 558w, https:\/\/www.turbosite.com.br\/blog\/wp-content\/uploads\/2014\/09\/temas-child-dica-turbosite-300x140.png 300w\" sizes=\"auto, (max-width: 558px) 100vw, 558px\" \/><\/p>\n<p><em>Vamos criar um Child Theme para o tema padr\u00e3o do WP: Twenty Fourteen.<\/em><\/p>\n<p><strong>2\u00ba Passo:\u00a0<\/strong>Quais s\u00e3o os arquivos b\u00e1sicos de um tema? O <em>styles.css<\/em> e o <em>index.php<\/em>! Como um Child Theme utiliza os arquivos do Tema Pai, o <em>index.php<\/em> \u00e9 dispens\u00e1vel, ent\u00e3o o 2\u00ba passo \u00e9 criar o \u00fanico arquivo obrigat\u00f3rio: o <strong>style.css:<\/strong><\/p>\n<p>&nbsp;<\/p>\n<div>\n<div id=\"highlighter_428502\" class=\"syntaxhighlighter  css\">\n<pre class=\"lang:css decode:true\">\/*\nTheme Name: Twenty Fourteen Child\nTheme URI: http:\/\/wordpress.org\/themes\/fourteen\nDescription: Esse \u00e9 um Child Theme!\nAuthor: M\u00e1rio Valney\nAuthor URI: http:\/\/mariovalney.com\nTemplate: twentyfourteen\nVersion: 1.0.0\n*\/<\/pre>\n<p>Se voc\u00ea j\u00e1 criou um tema ou j\u00e1 fu\u00e7ou algum tema, sabe que esse coment\u00e1rio no in\u00edcio do arquivo <em>style.css<\/em>\u00a0\u00e9 obrigat\u00f3rio e respons\u00e1vel pelas informa\u00e7\u00f5es do tema. A \u00fanica diferen\u00e7a desse para o do Tema Pai \u00e9 a linha &#8220;Template&#8221;. \u00a0\u00c9 nessa linha que escrevemos o nome do tema o qual o Child Theme ser\u00e1 subordinado (\u00e9 o mesmo nome na linha\u00a0&#8220;Text Domain&#8221; do Tema Pai).<\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<\/div>\n<p><strong>3\u00aa Passo:\u00a0<\/strong>Agora voc\u00ea s\u00f3 precisa ativar o Tema Filho e ser feliz =D<\/p>\n<h3>Como modificar seu tema<\/h3>\n<p>Agora que voc\u00ea j\u00e1 criou e ativou o seu Child Theme, vai perceber que o seu site perdeu o estilo (com perd\u00e3o do trocadilho). Isso acontece, porque todos os arquivos do Tema Pai, com exce\u00e7\u00e3o do <em>functions.php<\/em>, s\u00e3o sobrescritos, se houver um arquivo de mesmo nome no Tema Filho.<br \/>\nComo existe um <em>style.css<\/em> no Child Theme, o original \u00e9 descartado, por isso, se quisermos utiliz\u00e1-lo, devemos acrescentar uma linha:<\/p>\n<div>\n<div id=\"highlighter_149919\" class=\"syntaxhighlighter  css\">\n<pre class=\"lang:css decode:true \">@import url(\"..\/twentyfourteen\/style.css\");<\/pre>\n<p>Isso ir\u00e1 importar o arquivo do Tema Pai e assim o site vai voltar exatamente ao que \u00e9, se o Tema Pai estiver ativado.<\/p>\n<\/div>\n<\/div>\n<p>Para todos os outros arquivos, basta criar um arquivo de mesmo nome e ele ser\u00e1 chamado no lugar do correspondente no Tema Pai.<\/p>\n<p>&nbsp;<\/p>\n<h3>Quando usar?<\/h3>\n<p>Se os motivos de criar um Child Theme, no lugar de modificar os arquivos de um Tema, n\u00e3o ficaram claros, aqui vai uma lista:<\/p>\n<ul>\n<li>Se voc\u00ea modificar um Tema e ele for atualizado, voc\u00ea perde todas as modifica\u00e7\u00f5es. Usando um Child Theme o Tema Pai pode ser atualizado sem problemas (isso \u00e9 um ganho de seguran\u00e7a e de poss\u00edveis melhorias).<\/li>\n<li>Agiliza seu tempo de desenvolvimento.<\/li>\n<li>N\u00e3o h\u00e1 modo melhor de iniciar no estudo da cria\u00e7\u00e3o de Temas para WordPress.<\/li>\n<\/ul>\n<p>Voltando aos problemas do in\u00edcio do artigo, recomendei o uso desse recurso para a rede de sites, pois assim ser\u00e1 poss\u00edvel criar um Tema Pai para a rede e um Tema Filho para cada blog\/site. Afinal, criar uma pasta e um <em>style.css<\/em>, \u00e9 o m\u00ednimo de trabalho que se espera ao querer que cada site seja diferente, n\u00e9?<\/p>\n<p>Al\u00e9m disso, voc\u00ea poder\u00e1 mudar as funcionalidades de todos os sites ao mesmo tempo, alterando o Tema Pai. Ou mudar algo em algum site, alterando apenas o Tema Filho correspondente.<\/p>\n<p>E \u00e9 isso! Espero que tenham gostado e que achem \u00fatil.\u00a0Afinal, ignorar recursos como este \u00e9 querer n\u00e3o ser um Ninja do WordPress.<\/p>\n<p>Compartilhem com seus amigos e fa\u00e7am seus coment\u00e1rios a baixo.<\/p>\n<p>Via: <a href=\"http:\/\/mariovalney.com\/como-criar-um-tema-filho-child-theme-para-wordpress\/\" target=\"_blank\">MarioValney<\/a><\/p>\n<hr \/>\n<p>Acompanhe o blog da <a href=\"https:\/\/www.turbosite.com.br\" target=\"_blank\">Turbosite<\/a>, todos os dias dicas e novidades para voc\u00eas! <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Trabalhando com Temas Filhos (theme-child) com Wordpress, modifique um tema sem ter que alterar seus arquivos, assim voc\u00ea mant\u00e9m o tema Original e ter\u00e1 o seu personalizado.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,6,28,30],"tags":[102,116,180,671],"class_list":["post-3485","post","type-post","status-publish","format-standard","hentry","category-curiosidades","category-dicas","category-tutoriais","category-wordpress-2","tag-child-theme-wordpress","tag-como-criar-child-theme","tag-destaque","tag-wordpress-avancado"],"_links":{"self":[{"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/posts\/3485","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/comments?post=3485"}],"version-history":[{"count":0,"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/posts\/3485\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/media?parent=3485"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/categories?post=3485"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.turbosite.com.br\/blog\/wp-json\/wp\/v2\/tags?post=3485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}