smashing wordpress - além do blog

339
7/23/2019 Smashing Wordpress - Além Do Blog http://slidepdf.com/reader/full/smashing-wordpress-alem-do-blog 1/339 SMASHING WordPress  TÉCNICAS PROFISSIONAIS PARA UM LAYOUT MODERNO Thord Daniel Hedengren ALÉM DO BLOG Segunda Edição

Upload: yurisalmeida

Post on 18-Feb-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    1/339

    SMASHING

    WordPressTCNICAS PROFISSIONAIS PARA UM LAYOUT MODERNO

    Thord Daniel Hedengren

    ALM DO BLOG

    Segunda Edio

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    2/339

    H452s Hedengren, Tord Daniel. Smashing WordPress [recurso eletrnico] : alm do blog / Tord Daniel Hedengren ; traduo: Mariana Bandarra ; reviso tcnica: Diego Eis. 2. ed. Dados eletrnicos. Porto Alegre : Bookman, 2012.

    Editado tambm como livro impresso em 2012. ISBN 978-85-407-0174-8

    1. Programa de computador WordPress Web design. I. tulo.

    CDU 004.4WordPress

    Catalogao na publicao: Ana Paula M. Magnus CRB 10/2052

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    3/339

    SMASHINGWordPressALM DO BLOG

    Segunda Edio

    Thord Daniel Hedengren

    2012

    Verso impressadesta obra: 2012

    Traduo:

    Mariana Bandarra

    Reviso tcnica:

    Diego EisPalestrante e criadordo tableless.com.br

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    4/339

    Reservados todos os direitos de publicao, em lngua portuguesa, Bookman Companhia Editora Ltda., uma diviso do Grupo A Educao S.A.Av. Jernimo de Ornelas, 670 - Santana

    90040-340 Porto Alegre RSFone (51) 3027-7000 Fax (51) 3027-7070

    proibida a duplicao ou reproduo deste volume, no todo ou em parte, sob quaisquerformas ou por quaisquer meios (eletrnico, mecnico, gravao, fotocpia, distribuio naWeb e outros), sem permisso expressa da Editora.

    SO PAULOAv. Embaixador Macedo Soares, 10.735 - Pavilho 5 - Cond. Espace CenterVila Anastcio 05095-035 So Paulo SPFone (11) 3665-1100 Fax (11) 3667-1333

    SAC 0800 703-3444

    IMPRESSO NO BRASILPRINED IN BRAZIL

    Obra originalmente publicada sob o ttuloSmashing WordPress Beyond the Blog, 2nd edition

    ISBN 978-1-119-99596-8

    Copyright 2011 John Wiley & Sons,Ltd.

    All Rights Reserved. Authorized translation from the English language edition published by John Wiley& Sons Limited. Responsibility for the accuracy of the translation rests solely with Grupo A EducaoS.A. and is not the responsibility of John Wiley & Sons Limited. No part of this book may bereproduced in any form without the written permission of the original copyright holder, John Wiley &Sons Limited.

    raduo autorizada a partir do original em lngua inglesa da obra publicado por John Wiley & SonsLimited. A responsabilidade pela exatido da traduo de inteira responsabilidade da Grupo AEducao S.A. Este livro no poder ser reproduzido nem em parte nem na ntegra em qualquer meiosem permisso da John Wiley & Sons Limited.

    A edio em lngua portuguesa desta obra publicada por Bookman Companhia Editora Ltda, umadiviso do Grupo A, Copyright 2012.

    Capa: VS Digital, arte sobre capa originalLeitura final: Igor Campos DutraGerente Editorial CESA:Arysinha Jacques AffonsoEditora responsvel por esta obra:Mariana Belloli CunhaEditorao eletrnica: VS Digital

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    5/339

    CAPTULO 1:FERRAMENTAS

    H muita gente envolvida na escrita de um livro. Amigos,famlia, amores e animais de estimao, sem falar nos

    pacientes editores todos tiveram algum tipo de inuncia,pois precisaram me aturar durante esse perodo um tantoagitado. Eu poderia dedicar este livro a qualquer um deles,ou a membros da famlia que j se foram e que deniramquem sou hoje.

    No entanto, no farei isso.

    Este livro dedicado maravilhosa comunidade WordPress.Sem ela, no haveria WordPress, e sem WordPress, este que

    vos fala no teria escrito livro algum. Na verdade, se nofosse pelo WordPress especicamente, e pelo cdigo abertoem geral, eu provavelmente estaria fazendo algo totalmentediferente hoje em dia.

    preciso amar o WordPress. Eu com certeza amo.

    Tord Daniel Hedengren

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    6/339

    CAPTULO 1:FERRAMENTAS

    VII

    O autorTord Daniel Hedengren um viciado em palavras, razo pela qual lanou sua primeiranewsletter on-line em 1996. A partir de ento, tudo foi ladeira abaixo, com dezenas de sites euma carreira como editor e freelancer na Sucia e no exterior.

    Sua atuao internacional comeou com uma postagem em um blog, que lhe rendeu umcontrato com a Wiley para lanar um livro, o que por sua vez resultou no livro SmashingWordPress: Alm do Bloge em seu sucessor Smashing WordPress Temes: Making WordPressBeautiful, tornando-o uma voz ainda mais forte na comunidade WordPress. O que voc temnas mos a segunda edio do sucesso de crtica Smashing WordPress: Alm do Blog. Na

    verdade, isso apenas o comeo, j que aquela obsesso pelas palavras leva Tord estar semprefazendo algo novo.

    Quando no est nutrindo sua obsesso pelas palavras, Tord e seus amigos constroem sitesusando o WordPress em seu escritrio de Web design, Odd Alice. Ele tambm edita revistas eescreve artigos como freelancer para publicaes impressas e na Web, tanto em Sueco quantoem Ingls. Voc pode acompanhar tudo que Tord faz em http://tdh.me.

    Tord vive na terra dos reis, a Sucia.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    7/339

    Introduo: 1

    PARE I: INRODUO AO WORDPRESS 5

    Captulo 1: Anatomia de uma Instalao de WordPress 7 Instalao bsica 8 Mtodo de instalao guiada 8 Mtodo de instalao manual 10 Usando um servidor externo de banco de dados 11

    Outras configuraes de banco de dados 12 Um breve comentrio sobre instaladores 12 Movendo a instalao de WordPress para um diretrio diferente 13 Modificando o banco de dados 14 Aprendendo o lugar de tudo 15 Corrigindo problemas modificando o banco de dados 15 Fazendo backup 16 rocando de servio de hospedagem 18 Usando as ferramentas de exportao e importao 18 Quando exportar/importar no funciona 19 Como tornar sua instalao de WordPress mais segura 21 Usurios e senhas 22 Medidas de segurana no lado do servidor 22 Olhando para a frente 23

    Captulo 2: Sintaxe do WordPress 25 WordPress e PHP 26 WordPress Codex 26 Sobre o ncleo do WordPress 26

    emas e arquivos de modelo 27 Usando as template tags 30 Include tags 31 Passagem de mltiplos parmetros para uma template tag 32 Mais sobre parmetros 35 Compreendendo tipos de dados 35 Conditional tags 37 A seguir: o loop 38

    Captulo 3: O Loop 39 Compreendendo o loop do WordPress 40 O loop bsico 40 Separando o loop usando o arquivo de modelo loop.php 41

    Sumrio

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    8/339

    X

    SUMRIO

    Um breve comentrio sobre WP_Query 42 Usando o loop 42 Usando postagens fixas 49 rabalhando com formatos de postagem 52 Obtendo o mximo de query_posts() 54 Alternativas ao loop 56 Mltiplos loops 57 Postagens em destaque com mltiplos loops 58 rs demais, mas quatro loops so o mximo 60 Usando campos personalizados 63 Conceitos bsicos de campos personalizados 63 Publicando imagens de cabealho 64 Habituando-se a usar o loop 66

    PARE II: DESIGN E DESENVOLVIMENO DE EMAS DE WORDPRESS 67

    Captulo 4: Fundamentos dos emas de WordPress 69 Fundamentos de um tema 70 Elementos do tema bsico 70 Um breve comentrio sobre o cdigo 72 Uma visita guiada pelo tema Notes Blog 72 Folha de estilo: style.css 73 Cabealho do tema: header.php 76 Modelo principal: index.php 79 Loop: loop.php 80 Barra lateral: sidebar.php 84 Comentrios: comments.php 85 Rodap: footer.php 87 O importantssimo arquivo functions.php 89 Entendendo os arquivos de modelo 97 Quando usar quais arquivos de modelo? 98 Hierarquia de modelos 99 Modelos de pgina 100

    Modelo 404 102 Usando functions.php 104 Configurando a largura padro 105 Inserindo material promocional com functions.php 106 Entendendo os widgets e como us-los 107 Declarando widgets 107 Mltiplas reas de widget 108 Personalizando widgets 108 Melhorando a aparncia dos comentrios 109 Discusso nos comentrios 110 Destacando autores 112 Adicionando campos personalizados 112 Usos comuns 112

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    9/339

    XI

    O fator de usabilidade 113 Desenvolvendo um tema base 114 Lanando um tema 115 Checklists de temas 115 emas comerciais e a licena GPL 118 Submetendo um tema para wordpress.org 118 Para ir mais longe com temas 120

    Captulo 5: O Conceito de ema Filho 121 O brilhantismo dos temas filhos 122 Como os temas filhos funcionam 122 O maravilhoso modelo loop.php 126 emas filhos para eventos 126 O outro lado da herana 127

    Problemas comuns para manter em mente 128 Gerenciando diversos sites usando temas filhos 128 Gerenciando o design de mltiplos sites 129 No esquea do functions.php 129 E as estruturas de temas? 130 Para levar seus temas um passo alm 130

    Captulo 6: Uso Avanado dos emas 131 Esboo do tema 132 Regra n 1: Estilo por categoria, classificao por tag,

    ajustes com formatos de postagem 133 Regra n 2: Pense bem nos campos personalizados 133 Regra n 3: Construo com pginas, expanso com

    post typespersonalizados 134 s isso? 134 cnicas individuais de estilo 134 Aplicando estilo s postagens 135 Estilos com body class 137 Postagens fixas 139

    Funes personalizadas mais sofisticadas 140 Menus personalizados 140 Cabealhos personalizados 140 Imagem de fundo personalizada 141 Dominando os ganchos de ao 142 Usando ganchos 142 Criando seus prprios ganchos de ao 143 Revisitando o Notes Blog 144 Usando taxonomias 146 Pginas de opes do tema 151 Criando uma pgina de admin simples 152 Problemas com opes de tema 153 Suporte a mltiplos idiomas 154

    SUMRIO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    10/339

    XII

    rabalhando com arquivos de idioma 155 A questo do nome 156 Design condicional 156 rabalhando com feeds RSS 159 Os feeds de WordPress 159 Construindo uma URL personalizada para um feed 160 Implementaes bsicas de SEO 161 Enxugando o WordPress no lado do tema 163 emas versus plug-ins 164

    PARE III USANDO PLUGINS COM WORDPRESS 165

    Captulo 7: Anatomia de um Plug-in de WordPress 167 Fundamentos bsicos de um plug-in 168

    Mtodos para incorporar seus plug-ins 170 Usando ganchos 170 Criando suas prprias template tags 171 Funes pluggable 172 Funcionalidades obrigatrias para plug-ins 173 Configuraes de plug-in 173 Contedo do banco de dados e desinstalao 177 Depois da desinstalao 178 Adicionando suporte a widgets para plug-ins 179 Criando um widget 180 Widgets do painel de controle 182 Consideraes sobre plug-ins que usam o banco de dados 184 Compatibilidade reversa para plug-ins 184 Plug-ins e multisites de WordPress 185 Desenvolvendo plug-ins para multisites 186 Plug-ins site-wide no WordPress 186 Hospedando seus plug-ins em wordpress.org 187 Um alerta final sobre a criao de plug-ins 188

    Captulo 8: Plug-ins ou functions.php? 189 Quando usar um plug-in 190 Expandindo a funcionalidade com plug-ins 190 Cuidado: os plug-ins podem tornar seu site mais lento 190 Quando usar functions.php 191 Solues com temas filhos 192 Planejamento para funcionalidade expandida em seu site de WordPress 192

    Captulo 9: Plug-ins de WordPress Essenciais 193 Plug-ins com foco no contedo 194 Plug-ins de mdia 195 Plug-ins administrativos 196 Plug-ins para gerenciamento de spam e comentrios 201

    SUMRIO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    11/339

    XIII

    Plug-ins de redes sociais 203 Plug-ins de assinatura e dispositivos mveis 204 Plug-ins de SEO e busca 205 Plug-ins de cdigo e sada 207 Uma ltima ressalva: voc realmente precisa daquele plug-in? 208

    PARE IV: RECURSOS E FUNCIONALIDADES ADICIONAIS 209

    Captulo 10: WordPress como CMS 211 O WordPress sua melhor opo de CMS? 212 Checklist de WordPress como CMS 213 Enxugando o WordPress ao mximo 214 Ajustando a interface de admin 214 Seu prprio tema de admin 215

    Desblogando o WordPress 216 A combinao perfeita para um site esttico simples 217 Fazendo mais que o bsico 219 Utilidades parapost typespersonalizados e taxonomias

    em um CMS de WordPress 219 Usando o melhor dos Widgets em um CMS 220 Gerenciando menus 221 Shortcodespersonalizados 222 Adicionando shortcodecom functions.php 222 Destacando texto com citaes 224 rechos de shortcode 224 Integrando contedo externo ao WordPress 225 No esquea de incluir um manual 227 Uma ltima considerao sobre o uso do WordPress como CMS 227

    Captulo 11: Integrando a Web Social 229 Integrando o Facebook ao seu site 230 Boto Curtir 230 Widgets de perfil 231

    Integrando o witter 232 Adicionando botes e widgets do witter 232 Usando o mtodo da API para exibir seus tweets 234 Expanses do witter para sites 235 Lifestreamingcom WordPress 236 Configurando um lifestream 236 Sobre tarefas agendadas 238 Disseminando seu contedo com botes de envio na Web social 239 Usando plug-ins 239 Modificando seus prprios links de envio 240 Usando uma soluo de comentrios hospedada 242 Usando logins unificados 243 A importncia da Web social 244

    SUMRIO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    12/339

    XIV

    SUMRIO

    Captulo 12: ruques de Design 245 Mais controle sobre suas postagens 246 Design baseado em tags 246 Usando campos personalizados 247 Adicionando sua prpria taxonomia 249 Melhorando o menu 249 Sliding doors 250 Pensando sobre o efeito hover nos menus 252 Posicionando anncios dentro do loop 253 Criando pginas de 404 para ajudar o visitante 255 Usando bibliotecas de JavaScript com WordPress 255 WordPress do seu jeito 256 Formulrio de login personalizado 257 emas de Admin 258

    Melhorando seu site de WordPress 259

    Captulo 13: Diverso com Imagens 261 rabalhando com galerias de imagens 262 Aplicando estilos galeria 263 Navegando melhor com o efeito lightbox 265 Usando scripts e sistemas externos 267 Randomizando elementos de imagens 267 Exibindo imagens aleatrias a partir de suas galerias 268 Mais opes de imagens randomizadas 269 Aproveitando ao mximo os servios de compartilhamento de imagens 270 Publicando a partir do Flickr 271 Usando o slideshow do Flickr 273 Cuidado com a poluio 274

    Captulo 14: Funcionalidades Adicionais 275 Caixas com abas 276 Utilizao inteligente 276 Com ou sem abas? 278

    Exibindo feeds RSS 279 O parser integrado 280 Quando usar a soluo de widget 281 Mltiplos feeds com SimplePie 281 Enviando e-mail com WordPress 282 Adicionando um formulrio de login 283 Blogs para impresso 285 E muito mais... 286

    Captulo 15: Utilizaes Incomuns do WordPress 287 rabalhando com contedo enviado pelos usurios 288 Sobre o quadro de vagas de emprego 288 O conceito 289

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    13/339

    XV

    Recebendo as vagas 294 Desenvolvimento adicional 295 Usando o WordPress como uma base de conhecimento do tipo FAQ 296 Adicionando a funcionalidade 297 Melhorias adicionais 298 WordPress e comrcio eletrnico 299 Usando o WordPress para criar uma loja na Web 299 Vendendo produtos digitais 300 Desenvolvendo para comrcio eletrnico 300 Construindo um diretrio de produtos 301 Criando opost typepara livros 301 Pgina de livros 302 Exibindo os produtos 306 Construindo um site de links 307

    Alternativa: formato de postagem link 309 Algumas ideias de utilizao 309 Misturando postagens de link com contedo tradicional 310 Explorando a galeria 311 Modelo da categoria 312 Sobre os lbuns 316 Outras utilidades 318 E as imagens em destaque? 318 Formato de postagem galeria 319 Um breve adendo: outras utilidades para o WordPress 319 Pgina de eventos e calendrio 319 Intranets e colaborao 319 Comunidades e fruns 320 Bancos de dados 320 Sites estticos 321 Voc pode construir o que quiser 321

    ndice 323

    SUMRIO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    14/339

    Escrever um livro sobre WordPress no a tarefa mais fcil que algum poderia enfrentar.Quando meu editor e eu comeamos a discutir sobre esse projeto, a ideia era criar algo quefuncionasse no apenas como uma introduo para desenvolvedores Web e profissionais quequisessem utilizar o poder da plataforma WordPress, mas tambm como uma forma deestimular a mente das pessoas para ajud-las a criar coisas alm do bvio.

    Em outras palavras, faz-las se aventurar alm do blog, como sugere o subttulo do livro.

    O objetivo , na verdade, provar que o WordPress muito mais que uma plataforma parapublicao de blogs. possvel construir praticamente qualquer coisa usando o Wordpress, eessa uma excelente ideia se voc gosta de sites que carregam rpido e oferecem excelenteexibilidade. Nem sempre o Wordpress a opo perfeita, mas sempre uma boa ideia levaressa opo em considerao. A facilidade para desenvolver e usar essa plataforma uma desuas maiores vantagens, assim como a comunidade ativa que pode ajud-lo quando voc tiverproblemas e o fato de que trata-se do que h de melhor em cdigo aberto.

    Embora eu acredite que qualquer pessoa com algum conhecimento de HML, CSS e/ou PHPpossa aprender WordPress com este livro, importante lembrar que este no um livro parainiciantes. Comeamos em um ritmo j bastante acelerado para garantir que mesmo osprofissionais entendam bem os fundamentos bsicos. muito fcil se manter em um territriofamiliar e fazer as coisas do jeito que elas sempre foram feitas, em vez de aprender a fazer ascoisas do jeito certo. E, embora um conhecimento bsico aqui possa ajudar qualquer um acomear a usar o WordPress, realmente necessrio saber um pouco de HML e CSS, e ter,no mnimo, uma ideia do que PHP e do que essa linguagem faz. Se esses conceitos soestranhos para voc, recomendo fortemente ler sobre eles primeiro.

    Dito isso, Smashing WordPress: Alm do Blogfoi realmente escrito com a ideia de que qualquerum com a formao adequada possa aprender a usar o WordPress e levar a plataforma paraalm do bvio. Quando voc terminar este livro, estar pronto para desenvolver praticamente

    qualquer coisa usando o WordPress.Para transmitir essa mensagem, Smashing WordPress: Alm do Blogest dividido em quatropartes.

    PARTE I: INTRODUO AO WORDPRESS

    A primeira parte aborda os fundamentos essenciais do WordPress, desde a instalao at oque realmente faz o sistema dar o seu melhor. Essa primeira parte oferece tudo o que vocprecisa para comear a usar o WordPress, ainda que em ritmo um pouco mais rpido do queos livros tradicionais, para iniciantes. No entanto, os assuntos abordados no param por a,pois h muito mais que voc precisa saber na hora de comear a usar o WordPress, como, porexemplo, medidas de segurana, instalao, etc. A ideia no apenas ajudar quem est

    Introduo

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    15/339

    INTRODUO

    2

    comeando, mas tambm esclarecer os problemas e opes disponveis para quem j usa aplataforma.

    PARTE II: DESIGN E DESENVOLVIMENTO DE TEMASDE WORDPRESS

    Os temas de WordPress so o que o usurio v; eles so a pele do seu site, e so eles quecontrolam a forma como o contedo apresentado. Quando voc trabalha com um site queroda em WordPress, investe bastante tempo alterando os arquivos de temas para que oWordPress faa o que voc quer. Essa segunda parte apresenta no apenas as caractersticastcnicas dos temas, mas tambm o conhecimento necessrios para voc comear a construirseu prprio tema.

    PARTE III USANDO PLUG-INS COM WORDPRESSA terceira parte trata inteiramente do desenvolvimento de plug-ins para WordPress. O fato de

    voc poder expandir o WordPress com plug-ins significa que no h realmente limites para oque essa plataforma pode fazer por voc. Quase qualquer coisa que funciona em PHP poderodar em WordPress, e isso significa tambm que essa parte do livro altamente conceitual eque trata da comunicao bsica entre o seu plug-in (que , na verdade, o seu cdigo PHP) e oWordPress em si.

    PARTE IV: RECURSOS ADICIONAIS EFUNCIONALIDADES

    A quarta parte dedicada ao uso de WordPress para outros propsitos que no o de manterum blog. Aqui voc ver como usar o WordPress como sistema de gerenciamento de contedo(CMS) para alimentar sites mais tradicionais e construir sites partindo do zero, para provarque a plataforma pode realmente fazer mais do que apenas rodar sites com aparncia de blogs.Voc tambm ver alguns plug-ins que podem ajud-lo a tirar o mximo da plataformaWordPress . s vezes voc no precisa desenvolver coisas do zero; algum pode j ter feito issopara voc e disponibilizado o plug-in gratuitamente na Web.

    A ideia principal dessa parte mudar a forma como voc pensa sobre o WordPress. O objetivo romper com a ideia de que o WordPress apenas uma plataforma para blogs. Ele simplesmente uma plataforma de publicao.

    Nessa parte, voc tambm vai encontrar uma seleo de truques bacanas e tcnicas que podeutilizar para aprimorar ainda mais seu site. Muito do que voc pode precisar para seus projetosde WordPress pode j ter sido feito, e essa parte aborda rapidamente essa questo.

    INTRODUO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    16/339

    3

    COMECE A PENSAR, COMECE A PUBLICAR!

    Smashing WordPress: Alm do Blogfoi escrito pensando em desenvolvedores Web, masqualquer um que tenha alguma experincia com (X)HML, CSS, PHP e WordPress pode sebeneficiar deste livro. realmente muito fcil comear a usar o WordPress, e o Wordpress

    tudo o que voc precisa para comear a criar seus projetos. Depois disso, voc vai precisartrabalhar um pouco, modificando ou construindo temas e criando os plug-ins necessriospara desenvolver o site que voc imaginou.

    Em outras palavras, comece a pensar e comece a publicar com WordPress, no importa sevoc est desenvolvendo o prximo Engadget ou Huffi ngton Post, ou algo completamentediferente.

    INTRODUO

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    17/339

    I PARTE

    I

    INTRODUO

    AO WORDPRESS

    Captulo 1:Anatomia de uma Instalao deWordPress

    Captulo 2: Sintaxe do WordPress

    Captulo 3: O Loop

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    18/339

    SMASHING WORDPRESS

    CAPTULO

    1

    1

    A INSTALAODO WORDPRESSno dicil ou demorada, e as instruesdisponveis em wordpress.orgso maisque o suciente para guiar voc pelainstalao bsica. Com o conhecimentoadicional que voc encontrar neste captulo,

    no entanto, poder turbinar suacongurao do WordPress com temas eplug-ins. O WordPress constitui a estruturageral do site, mas os temas e plug-ins so oque realmente azem a plataorma dar omelhor de si.

    ANATOMIA

    DE UMAINSTALAO

    DE WORDPRESS

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    19/339

    PARTE I:INTRODUO AO WORDPRESS

    8

    Lembre-se de que, para os propsitos deste livro, WordPress se refere verso autnomado WordPress, disponvel gratuitamente em wordpress.org. No confunda esta versocom a verso para mltiplos usurios, chamada WordPress MU (sobre a qual falaremosbrevemente depois) ou com a verso Automattic, disponvel em wordpress.com. Estelivro focado na verso principal disponvel em wordpress.org, e mais

    especicamente na verso 3.1.

    INSTALAO BSICA

    Instalar o WordPress muito cil; toda aquela conversa de instalao em cinco minutos verdade mesmo. Na verdade, a nica razo para a instalao levar tanto tempo o ato de queo upload dos arquivos pode demorar, devido lentido da conexo com a Internet ou doservio de hospedagem. Como provvel que voc j tenha uma certa experincia com ainstalao bsica do WordPress, seremos breves.

    Em primeiro lugar, certique-se de que o seu sistema atende aos requisitos mnimos. Osrequisitos mais recentes podem ser encontrados em http://wordpress.org/about/requirements/. Se o seu servio de hospedagem suporta a linguagem PHP 4.3 ou versessuperiores, e roda MySQL 4.0 ou verses superiores, voc est bem equipado. No entanto, preciso certicar-se de que seu host tem mod_rewrite instalado, uma vez que isso sernecessrio para melhorar a aparncia dos links.

    Existem duas ormas de instalar a plataorma WordPress: a orma guiada e a orma manual.

    Uma terceira forma a instalao em um clique oferecida por alguns servios de

    hospedagem Web. A instalao em um clique ser brevemente descrita mais adianteneste captulo.

    MTODO DE INSTALAO GUIADA

    O WordPress um dos sistemas de publicao de cdigo aberto mais ceis de se colocar emuncionamento. Basta azer o download da verso mais recente do WordPress (em http://wordpress.org/download/), extrair o arquivo compactado (geralmente voc ir azer odownload de um arquivo zip) e ento azer o upload dos arquivos dentro da pasta dowordpress para o local onde voc deseja instalar o WordPress, utilizando FP. Por exemplo, se

    voc quiser instalar o WordPress em meusite.com, basta azer o upload dos arquivos para apasta raiz de meusite.com.

    Direcione seu navegador para o diretrio de instalao (que seria http://meusite.com,no nosso exemplo) e ornea as inormaes solicitadas, como mostra a Figura 1-1. Voc vaiprecisar do seu nome no banco de dados, nome de usurio e senha, e possivelmente tambmdo endereo para o servidor de banco de dados se voc ou o seu servio de hospedagempossui um endereo externo.

    Clique em Submit para ir at a congurao do site, como mostra a Figura 1-2. Nesta tela,

    preencha o nome do site, as credenciais desejadas para a conta de administrador, e assim pordiante. Certique-se de usar um endereo de e-mail prossional e de manter o controle de suasenha. Depois de inserir todas as inormaes solicitadas, clique no boto Install WordPress e

    voc est praticamente pronto. Basta azer login e o WordPress est instalado e uncionando!

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    20/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    9

    A instalao guiada no oerece opes para que o WordPress rode em qualquer idiomadierente do padro, Ingls. Se quiser que a sua instalao rode em um idioma que no oingls, consulte o procedimento de instalao manual detalhado na prxima seo.

    Figura 1-1:Interface de instalao

    Figura 1-2:Preencha os detalhes

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    21/339

    PARTE I:INTRODUO AO WORDPRESS

    10

    MTODO DE INSTALAO MANUAL

    Para uma instalao manual, voc vai precisar do seguinte:

    A verso mais recente do WordPress (disponvel em http://wordpress.org/download/)

    Um banco de dados MySQL com um usurio que possua privilgios de escrita (pergunteao seu servio de hospedagem caso voc no saiba como congurar isso)

    Seu programa de FP avorito

    Para instalar, descompacte o download do WordPress e aa o upload do contedo da pastawordpress, no destino de sua preerncia no servidor. Em seguida, abra o arquivo wp-cong-sample.php e encontre as partes do banco de dados onde voc deve preencher seu nome, nomede usurio e senha com privilgios de escrita. Esta a aparncia de wp-cong-sample.php:

    define('DB_NAME', 'coloqueaquionomedoseubancodedados'); // Nome do banco de dados

    define('DB_USER', 'nomedeusurioaqui'); // Seu nome de usurio MySQLdefine('DB_PASSWORD', 'suasenhaaqui'); // ... e senha

    define('DB_HOST', 'localhost'); // H 99% de chance de que voc no precise alterar

    este valor

    Em seguida, ainda em wp-cong-sample.php, encontre a seo Secret Keys. Essa parte comeacom um texto inormativo comentado, intitulado Authentication Unique Keys (Chavesnicas de autenticao), seguido por quatro linhas onde voc ir inserir as chaves secretas deautenticao. Essa uma uno de segurana para tornar sua instalao mais segura e menos

    vulnervel a hackers. Voc s precisa adicionar essas senhas uma vez, e embora seja possvelinserir manualmente o valor que voc desejar, o wordpress.org oerece um gerador automtico

    que sugere linhas aleatrias cada vez que carregado. Basta copiar o link (https://api.wordpress.org/secret-key/1.1/) do gerador de seu arquivo wp-cong-sample.php eabri-lo no navegador de sua preerncia. Voc ver uma pgina contendo um cdigosemelhante a este:

    define('AUTH_KEY',

    'PSmO59sFXB*XDwQ!p3K{TD.tJoM74.Oy5?B@=dF_lcmlB6jm6D|gXnlJ#Z4K,M>E;[ +,22O?Lnarb');

    define('LOGGED_IN_KEY',

    'c}gR{389F*IG@/V+hg1 45J*H+9i_^HaF;$q(S[5Er[:DVOUjmS@(20E~t0-C*II');

    define('NONCE_KEY',

    'gz2D:n52|5wRvh)es:8OO|O ufZL@C|G.-w/H-E*}K:ygp4wI*.QHO-mUV_PR|6M');

    Copie o contedo da pgina do gerador e utilize esse contedo para substituir o seguintecdigo no arquivo wp-cong-sample.php:

    define('AUTH_KEY', '');

    define('SECURE_AUTH_KEY', '');

    define('LOGGED_IN_KEY', '');

    define('NONCE_KEY', '');

    Ao substituir o cdigo com as linhas retiradas da pgina gerada, voc tornou sua instalaoum pouco mais protegida daqueles hackers inconvenientes.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    22/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    11

    A ltima coisa que voc talvez queira mudar no arquivo wp-cong-sample.php o idioma. Aplataorma WordPress est em ingls (ingls americano, mais precisamente) por padro. Paraalterar o idioma, voc precisar azer o upload de um arquivo de idioma para sua pastawp-content/language/. Os arquivos de idioma esto em ormato .mo;. voc pode encontrar amaioria deles em http://codex.wordpress.org/WordPress_in_Your_Language.

    Voc tambm precisa alterar o seguinte trecho em wp-cong-sample.php para avisar oWordPress qual o idioma que voc deseja:

    define ('WPLANG', '');

    Voc deve adicionar o cdigo do idioma: esse o mesmo cdigo do arquivo de idioma, sem aextenso do arquivo. Assim, se voc deseja que sua instalao seja eita em sueco (a lngua dosreis), voc pode azer o download do arquivo sv_SE.mo, azer o upload para a pastawp-content/languages/, e, em seguida, passar a lngua para a uno WPLANG, da seguinteorma:

    define ('WPLANG', 'sv_SE');

    Isso no vai necessariamente azer os temas ou plug-ins que voc utiliza serem exibidos noidioma selecionado, mas o WordPress e suas uncionalidades principais estaro no idiomadesejado, assim como qualquer cdigo com suporte a mltiplos idiomas. (Voc vai aprendersobre a localizao dos temas e plug-ins no Captulo 6.)

    E pronto! Renomeie o arquivo wp-cong-sample.php para wp-cong.php e use seu navegadorpara indicar o local de sua instalao. Voc dever ver um link que d incio ao procedimentode instalao, onde voc preenche o ttulo do blog, o endereo de e-mail do usurio admin eescolhe se quer ou no que o blog seja aberto para indexao por mecanismos de busca (na

    maioria dos casos essa opo aceita, mas se voc quiser brincar um pouco com o blogprimeiro, desative essa opo e volte a ativ-la mais tarde nas conguraes). Depois disso,

    voc ir receber um nome de usurio admin e uma senha aleatria (salve esses dados!) e, comalguma sorte, uma mensagem de sucesso, juntamente com um link para o blog.

    Nada muito complicado, no mesmo?

    USANDO UM SERVIDOR EXTERNO DE BANCO DE DADOS

    Uma das causas mais comuns de alha na instalao do WordPress o ato de que o banco de

    dados MySQL est localizado em um servidor separado. Se voc est experimentando erros deconexo com o banco de dados, e tem certeza que tanto o nome de usurio quanto a senha dousurio para o banco de dados esto corretos, e que o usurio possui privilgios de escritaplenos, provavelmente o problema esse.

    Para consertar isso, basta encontrar este trecho do cdigo em wp-cong.php (ou wp-cong-sample.php se voc ainda no tiver renomeado o arquivo) e alterar o localhostpara seuservidor de banco de dados:

    define('DB_HOST', 'localhost');

    O nome do servidor MySQL depende do seu servio de hospedagem. Pode ser mysql67.thesuperhost.com, ou algo completamente dierente disso. Simplesmente troque localhostpor essa inormao, e tente novamente executar o script de instalao.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    23/339

    PARTE I:INTRODUO AO WORDPRESS

    12

    Naturalmente, se voc no conseguir encontrar o endereo do servidor de banco de dados,deve entrar em contato com seu servio de hospedagem para obter esses detalhes.

    OUTRAS CONFIGURAES DE BANCO DE DADOSalvez voc prera pensar um pouco mais sobre as opes de banco de dados, antes de instalaro WordPress. (Provavelmente no, mas ainda assim, vale a pena alar um pouco sobre oassunto.)

    Primeiramente, voc pode querer mudar o conjunto de caracteres e agrupamento do banco dedados. Essas opes dizem ao WordPress em que codicao de caracteres est o banco dedados, e quase sempre essa linguagem ser UF-8. Essa tambm a congurao padro noarquivo wp-cong-sample.php, de modo que voc no precisar mexer nessa congurao, amenos que tenha uma necessidade especca. No entanto, caso voc tenha uma necessidade

    especca de alterar essa congurao, encontre o seguinte trecho:

    define('DB_CHARSET', 'utf8');

    Esse o conjunto de caracteres, cuja congurao padro UF-8 (obviamente, em cdigo, agraa correta utf8). Muito provavelmente voc no vai (e nem deveria) alterar isso, maspode haver situaes em que precise az-lo, ento tenha isso em mente, para reerncia utura.

    O agrupamento (do ingls, collation) basicamente a ordem de classicao do conjunto decaracteres que o WordPress aplicar ao banco de dados MySQL durante a ase de instalao, epode ser alterado nesta linha:

    define('DB_COLLATE', );

    Nesse caso, o campo est vazio, ou seja, o conjunto de caracteres denido em DB_CHARSETser passado como agrupamento. O padro nesse caso UF-8, mas caso voc precise de algoespecco, pode adicionar o conjunto de caracteres da seguinte orma:

    define('DB_COLLATE', 'character_set_of_choice');

    UM BREVE COMENTRIO SOBRE INSTALADORES

    Alguns servios de hospedagem oerecem instaladores que colocam seu WordPress emuncionamento com apenas um clique, diretamente a partir da interace de admin do serviode hospedagem Web. O mais popular desses instaladores em um clique provavelmente oFantastico. Em um primeiro momento, uma instalao em um s clique parece uma timaideia, pois voc no precisar mexer com arquivos de congurao ou qualquer outra coisa; oinstalador simplesmente cria o blog e voc est pronto para comear.

    No entanto, tire um tempinho para pesquisar um pouco antes de optar por esse caminho. Oaspecto mais importante que voc deve considerar a verso de WordPress para a qual oinstalador est congurado. Verses antigas no deveriam ser permitidas porque estodesatualizadas e, na pior das hipteses, podem representar um risco de segurana. Anal decontas, a cada nova verso do WordPress, vrias alhas de segurana so corrigidas, ou seja,no se trata apenas de lanar novos recursos para a sua plataorma de blogs avorita.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    24/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    13

    Instaladores como o Fantastico so timos e podem economizar tempo, caso instalem a ltimaverso da plataorma, de ato. Se voc encontrar um que utilize a verso mais recente, aindaassim deve azer uma pequena investigao para ter certeza de que outros usurios norelataram algum problema srio. Se o caminho est livre e voc realmente no quiser azer ainstalao manual de cinco minutos, ento v em rente!

    Depois de ter instalado o WordPress usando um instalador, voc deve usar o recurso deatualizao includo no instalador, ou executar as atualizaes manualmente utilizando FP,caso seu servio de hospedagem no oerea suporte s atualizaes automticas. Certique-sede que o instalador no aa algo estranho durante a instalao que impea voc de realizaratualizaes manuais, para que voc que dependendo do script do instalador.

    MOVENDO A INSTALAO DE WORDPRESS

    PARA UM DIRETRIO DIFERENTEs vezes, voc quer colocar sua instalao de WordPress em uma pasta prpria. Isso ajuda aevitar a desordem em seu ambiente de hospedagem, removendo todos os arquivos e pastas doWordPress da raiz do domnio, acilitando assim o gerenciamento de seus dierentesempreendimentos na Web. Suponha que voc queira adicionar outras instalaes de sofwareda Web; voc pode ter diculdade em encontrar os arquivos de que precisa se eles estiveremtodos misturados (embora seja de grande ajuda o ato de, nesse nvel, tudo que do WordPresster o nome wp-alguma coisa). O negcio s ca conuso se voc quiser azer outra coisa almde apenas utilizar o WordPress.

    A instalao para uma subpasta exatamente igual instalao para a raiz de um domnio,por isso no vou entrar em detalhes sobre isso. A ideia ter a instalao do WordPress emuma subpasta, mas com o blog aparecendo como se estivesse na pasta raiz, mantendo a pastaraiz no servidor limpa. Voc pode instalar o WordPress diretamente em uma subpasta, ouinstal-lo na pasta raiz e mover os arquivos para uma subpasta. Voc decide como vai lidarcom isso; ambas as maneiras so ceis.

    As instrues a seguir partem do pressuposto de que voc j tenha instalado o WordPress emsua pasta raiz e agora deseja mov-lo para uma subpasta. Por exemplo, suponha que voctenha o WordPress instalado na pasta raiz (domain.com), e queira mover a instalao parauma subpasta chamada wpsystem, mantendo o site em si na raiz. Isso signica que quando as

    pessoas visitarem domain.com, elas vero seu site de WordPress, mas quando voc zer ologin para gerenciar o site, voc ar isso dentro da pasta wpsystem (ou domain.com/wpsystem/wp-admin/, para ser preciso).

    Voc deve congurar os links permanentes antes de azer isso, uma vez que eles devemuncionar independentemente de voc usar ou no uma subpasta. As opes de linkspermanentes, mostradas na Figura 1-3, podem ser encontradas em Settings Permalinks.

    Para mover a sua instalao WordPress para o novo diretrio, primeiramente crie a pastawpsystem. Em seguida, v at a pgina General Settings e altere o campo URL do endereo deWordPress para http://domain.com/wpsystempara que ele reita sua nova pasta, e o

    campo URL do endereo do Blog para http://domain.com, onde voc quiser que seu siteesteja. Ento, clique no boto Update e mova todos os arquivos de WordPress para seu novodiretrio em http://domain.com/wpsystem, exceto os arquivos index.php e .htaccess,que devem permanecer onde voc quer deixar seu site (http://domain.com).

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    25/339

    PARTE I:INTRODUO AO WORDPRESS

    14

    Figura 1-3:A seo de configurao geral General Settings se encontra em General, na seo Settings da interface de admin

    Quando os arquivos tiverem sido movidos, abra index.php e localize o seguinte trecho decdigo:

    require('./wp-blog-header.php');

    E substitua-o por este:

    require('./wpsystem/wp-blog-header.php');

    Como voc pode ver, o cdigo agora aponta para a pasta wpsystem e para o arquivo wp-blog-header.php.

    Faa login na interace de admin do WordPress (que agora est em domain.com/wpsystem/wp-admin/), atualize os links permanentes, e est pronto.

    MODIFICANDO O BANCO DE DADOS

    Na maioria das vezes, voc no precisa se preocupar com o banco de dados; o WordPresscuida disso para voc. s vezes, ocorrem mudanas no banco de dados entre verses, mas asatualizaes do programa cuidaro de tudo, e aora manter um backup atualizado do seuprprio contedo, o banco de dados capaz de cuidar muito bem de si mesmo.

    Dito isso, se algo der errado, talvez voc precise azer algumas edies no banco de dados paracorrigir o problema. As questes mais comuns dizem respeito a redenir senhas, URLsestranhas ocasionadas por arquivos movidos, mudanas no nome de domnio e questesrelacionadas a widgets.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    26/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    15

    Uma advertncia: antes de prosseguirmos, voc deve lembrar que fazer alteraes nobanco de dados coisa sria. Aqui no h como desfazer aes, o que excludo excludo para sempre. Mesmo que voc saiba o que est fazendo, deve sempre fazer umbackup antes de alterar algo. Se voc no entende de MySQL e PhpMyAdmin, no mexano banco de dados. Voc vai estragar as coisas.

    APRENDENDO O LUGAR DE TUDO

    Se orientar com o banco de dados de WordPress muito cil. Ele composto por onzetabelas, que por sua vez esto preenchidas por contedo. Basta navegar pelo banco de dadospara responder a maioria das suas perguntas, e eventuais edies podem ser eitas ali mesmo,se voc souber o que est procurando. Naturalmente, h uma descrio completa do banco dedados na documentao (http://codex.wordpress.org/Database_Description)e voc deve consultar esse material sempre que necessrio.

    As onze tabelas principais so

    wp_comment: metadados de comentrios

    wp_comments: contm todos os comentrios

    wp_links: contm os links adicionados e dados sobre os links

    wp_options: as opes do blog

    wp_postmeta: metadados das postagens

    wp_posts: as postagens de ato

    wp_terms: categorias e tags

    wp_term_relationships: associa categorias e tags s postagens

    wp_term_taxonomy: descries das categorias e tags

    wp_usermeta: metadados de usurio

    wp_users: os usurios de ato

    odas essas tabelas so importantes, claro, mas se voc precisar corrigir ou alterar algodiretamente no banco de dados, h uma boa chance de que seja em wp_options (paraconguraes do blog, como URLs, etc.), wp_posts (para editar suas postagens em massa), ouwp_users (para redenir senhas, etc.).

    CORRIGINDO PROBLEMAS MODIFICANDO O BANCO DE DADOS

    Um dos problemas mais comuns que ocorre quando o WordPress atualizado para uma novaverso que os widgets s vezes enlouquecem, deixando apenas uma pgina em branco no seublog. Embora isso parea ser bem menos comum nas verses mais recentes de WordPress, asinstrues de atualizao ainda recomendam que voc desabilite todos os plug-ins e retorne aotema padro. Se voc seguir essa recomendao, provavelmente nunca acabar com aquelapgina em branco.

    No entanto, se voc acabar com uma pgina em branco, o problema muito provavelmente est noswidgets. Uma soluo possvel limpar os widgets do banco de dados; eles esto escondidos natabela wp_options. O procedimento exato que voc deve realizar e os nomes dos diversos widgets

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    27/339

    PARTE I:INTRODUO AO WORDPRESS

    16

    dependem dos plug-ins que voc tem, por isso proceda com cuidado. Muito provavelmente osdados tero nomes que parecem logicamente relacionados aos plug-ins que voc utiliza, e tendoisso em mente voc deve conseguir encontrar o que est procurando. Isso pode parecer um tantoperigoso, mas vale a pena tentar, caso se depare com uma tela em branco em seu blog depois deuma atualizao para uma nova verso. Se voc precisar de ajuda, os runs de suporte emwordpress.orgso um excelente recurso.

    Outro problema que voc pode querer solucionar no banco de dados alterar ou redenir asenha de um usurio. Voc no pode recuperar de ato a senha do banco de dados, uma vezque ela criptograada e tudo que vai ver uma conuso de caracteres embaralhados, mas

    voc pode alterar a senha perdida para uma nova. Apenas lembre-se de que as senhasprecisam de tratamento MD5, o que pode ser eito atravs do PhpMyAdmin ou em

    virtualmente qualquer erramenta de gerenciamento MySQL que voc utilizar. Basicamente, oque voc precisa azer digitar a nova senha em texto simples, e selecionar MD5 para essecampo especco. Voc vai acabar com uma nova linha de caracteres embaralhados, que

    realmente corresponde ao que acabou de digitar. Mais uma vez, se isso soa assustador paravoc, no aa nada antes de aprender mais!

    Finalmente, voc pode querer editar em massa as suas postagens. alvez voc tenha compradoum novo domnio e queira alterar o local de origem de todas as imagens que usou ao longodos anos, de olddomain.com/wp-content/image.jpgpara newdomain.com/wp-content/image.jpg, por exemplo.

    Existem plug-ins que podem ajudar nisso, de modo que voc provavelmente deve comear por a.Porm, se voc se sente conortvel trabalhando com o banco de dados, pode executar umaconsulta SQL para buscar todos esses elementos e substitu-los pelos novos. Poderia ser algo como:

    UPDATE wp_posts SET post_content = REPLACE (

    post_content,

    'olddomain.com/wp-content/',

    'newdomain.com/wp-content/');

    Esse cdigo buscaria, na tabela wp_posts, qualquer meno a olddomain.com/wp-content/ e substituiria o local por newdomain.com/wp-content/. Isso, por sua

    vez, corrigiria todos os links de imagem no exemplo. Essas consultas SQL bacanas podem sermuito prticas na hora de editar postagens em lote, mas lembre-se de que no possveldesazer sua ao aqui; o que est eito est eito, por isso certique-se de que voc tem um

    backup do banco de dados antes de sequer pensar em azer essas coisas.

    FAZENDO BACKUP

    Qualquer um que j perdeu dados em uma alha de disco rgido ou evento semelhante sabe daimportncia de azer backup, e no preciso nem dizer que isso se aplica tambm ao seucontedo on-line. O backup de WordPress na verdade um processo em duas etapas, uma vezque seu blog composto por um banco de dados (com todo o contedo) e por arquivosestticos (uploads de imagens e outros anexos). E alm disso voc tem seu tema, seus plug-ins,etc., que voc pode ou no ter alterado, mas ainda assim no quer perder, pois isso signicaria

    precisar agrupar tudo isso novamente. Na verdade, com a incluso de atualizaes automticasdentro da interace de admin do WordPress (um grande recurso por si s), ter backup dessascoisas se tornou ainda mais importante.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    28/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    17

    Os nicos elementos que voc pode perder sem causar muitos problemas so os arquivosprincipais do WordPress. Voc sempre pode azer novamente o download desses arquivos,embora possa ser uma boa ideia manter uma cpia do arquivo wp-cong.php em um localseguro.

    H diversas opes disponveis para suas necessidades de backup de banco de dados. A maisbvia seria utilizar uma interace Web, como PhpMyAdmin, e simplesmente azer o downloadde um arquivo compactado contendo os dados. No entanto, voc deve lembrar de azer issoregulararmente, o que pode ser um problema. Alm disso, PhpMyAdmin e outras interacessemelhantes para gerenciamento de banco de dados no so exatamente as solues maisamigveis, e a maioria de ns preere no mexer com o banco de dados a no ser quandorealmente necessrio.

    Seja bem-vindo ao mundo maravilhoso dos plug-ins de WordPress, especicamente umplug-in chamado wp-db-backup. Esse plug-in, que abordado em detalhes no Captulo 9, vaipermitir que voc dena regras dierentes para backups de banco de dados, e que seus plug-ins

    sejam armazenados em um servidor, enviados por e-mail para voc, ou salvos atravs de outromtodo de backup, em intervalos regulares.

    Esse o contedo do banco de dados passemos agora aos arquivos estticos. Essa parte muito simples: basta realizar o backup da pasta wp-content. Essa pasta contm todos os seusuploads (imagens, vdeos e outros arquivos que esto anexados a postagens do seu blog),

    juntamente com seus temas e plug-ins. Na verdade, essa a nica parte na instalao doWordPress na qual voc deveria mexer, ora o arquivo wp-cong.php, o arquivo .htaccess, epossivelmente o arquivo index.php na pasta raiz. O backup da pasta wp-content salva todos osseus arquivos estticos, temas, plug-ins, etc., desde que voc no tenha ajustado alguma

    congurao personalizada para armazenar dados ora dessa pasta.Ento, como azer o backup de wp-content? Inelizmente, o mtodo mais simples de backup,que naturalmente seria azer o download da pasta usando um programa de FP, requer que

    voc se lembre de az-lo. Alguns servios de hospedagem Web possuem scripts embutidosque podem enviar arquivos backup para locais de armazenamento externo, como Amazon S3ou qualquer servidor FP. Essa uma orma barata de garantir a segurana de seu dadosestticos, mas algo que voc deve realmente investigar, e no simplesmente conar emlembrar de azer voc mesmo o download via FP. Na verdade, essas solues embutidasmuitas vezes gerenciam tambm o banco de dados, de modo que voc pode congurar umbackup tambm para ele. Anal de contas, melhor prevenir do que remediar.

    O ltimo recurso, e ltima esperana caso o pior acontea durante a instalao, a soluo debackup do prprio servio de hospedagem. No importa o quo bom seja um servio dehospedagem Web, no h quem me convena de que ele v resolver qualquer questo relativaa perda de dados. Alguns servios de hospedagem realmente oerecem servios de backup acada hora, discos RAID e outras solues mirabolantes, mas at mesmo a soluo mais bempensada pode apresentar uma alha ou causar problemas. A maioria dos servios dehospedagem oerece alguma soluo de backup automtico, mas o que acontece se odatacenter inteiro estiver ora do ar por algum motivo, ou se houver uma queda de ora? Vocpode achar que isso no aconteceria hoje em dia, mas se o Google pode car offl ine, o seuservio de hospedagem tambm pode.

    Em outras palavras, certique-se de implementar sua prpria soluo de backup. Com sorte,voc nunca precisar dela, mas, se precisar, car eliz por ter pensado nisso desde o incio.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    29/339

    PARTE I:INTRODUO AO WORDPRESS

    18

    TROCANDO DE SERVIO DE HOSPEDAGEM

    s vezes, voc precisa trocar seu provedor de hospedagem Web. Pode ser que voc tenhacrescido demais para seu servio de hospedagem e precise de mais potncia em seu site(parabns!), ou talvez a qualidade do servio tenha decado. Seja qual or a razo, no raro

    precisar migrar seu site de um servio de hospedagem para outro. Isso envolve tudo, desdeapontar os domnios at mover de ato os arquivos do seu site, isso sem alar do banco de dados.Falaremos apenas das aes de migrao que se reerem ao WordPress, por isso, se voc precisarde ajuda para migrar seu domnio, e-mail, e coisas do tipo, entre em contato com o seu novoservio de hospedagem, e ele dever ser capaz de ornecer o auxlio de que voc precisa.

    Existem vrias maneiras de azer a migrao para um novo servidor. Meu mtodo preerido usar a uno Export/Import, que pode ser encontrada em ools na tela de admin do WordPress.

    USANDO AS FERRAMENTA DE EXPORTAO E IMPORTAOAntigamente, havia algumas erramentas de exportao e importao no admin doWordPress, mas elas oram transormadas em plug-ins, ento pode ser que voc precise azer odownload e a instalao de algum plug-in. Caso seja necessrio, aa isso. Alm disso, antes demigrar, certique-se de que a instalao do WordPress esteja atualizada. Em seguida, v atools e selecione a opo de exportar o contedo, como mostra a Figura 1-4. Voc poderazer o download de um arquivo contendo os dados.

    Figura 1-4:Exportando dados

    Instale o WordPress em seu novo servidor. Qualquer servio de hospedagem decente ter

    URLs alternativas para acessar seu contedo no servidor on-line, sem precisar que seudomnio esteja apontando para o contedo. Quando voc tiver a instalao de WordPressuncionando, exclua as pginas e postagens automticas, uma vez que elas no serosubstitudas. Assim, voc garante que sua instalao ser limpa.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    30/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    19

    Em seguida, aa o download da pasta wp-content do servidor antigo e aa o upload dessapasta no servidor novo. Agora, todas as suas imagens, plug-ins, temas, etc. esto ondedeveriam estar. H uma opo integrada ao importador de postagens que ir tentar azer odownload das imagens de suas postagens para o novo servidor, mas essa opo no uncionana maioria daz vezes, de modo que melhor gerenciar manualmente os arquivos estticos em

    wp-content, usando o seu programa de FP avorito.

    Depois disso, voc j est pronto para importar o arquivo exportado a partir de seu servidorantigo. V at ools (ver Figura 1-5) e execute o assistente de importao, garantindo que oarquivo exportado do servidor antigo esteja atualizado. Importe o arquivo, deixe que o scriptprocesse seu contedo e pronto! Verique se tudo est uncionando corretamente, parabenize asi mesmo e depois redirecione seu domnio para o novo servidor. Voc pode precisar editar asconguraes de seu novo blog, pois ele pode ter obtido as URLs a partir do sistema interno doservio de hospedagem; nesse caso, mude as URLs para que elas correspondam ao nome dedomnio do seu blog. Enquanto aguarda o direcionamento do domnio para o novo servidor,

    naturalmente o blog no uncionar, mas o blog antigo ainda estar uncionando. No entanto,pode ser uma boa ideia desativar os comentrios no domnio antigo, uma vez que novoscomentrios sero perdidos quando o visitante or redirecionado para o novo servidor com suanova instalao de WordPress, que toma como base o contedo de seu servidor antigo nomomento em que voc exportou o arquivo.

    Figura 1-5: O WordPress capaz de importar arquivos a partir de uma srie de sistemas, mas, nesse caso, voc deve selecionar a opo

    WordPress, j que foi a partir dele que voc realizou a exportao do arquivo

    QUANDO EXPORTAR/IMPORTAR NO FUNCIONA

    Inelizmente, h casos em que o mtodo Export/Import no unciona geralmente, porqueh contedo demais para que a linguagem PHP realize o parsing da importao. Isso acontecepossivelmente devido s conguraes do seu servidor, e no chega a ser um problema a noser que voc tenha um blog muito grande.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    31/339

    PARTE I:INTRODUO AO WORDPRESS

    20

    Se esse or o caso, voc precisar azer as coisas de orma um pouco dierente. Idealmente,voc pode recriar o seu ambiente de orma idntica no novo servidor, com o mesmo nome debanco de dados e o mesmo nome de usurio e senha para gerenci-lo. Se conseguir azer isso,a migrao ser muito cil. udo que voc precisa azer obter uma cpia do banco dedados MySQL usando sua erramenta de administrao MySQL avorita e em seguida

    importar o banco de dados para o novo servidor. Isso provavelmente signica utilizar oPhpMyAdmin e as instrues de backup disponveis no WordPress Codex (encontradas emhttp://codex.wordpress.org/Backing_Up_Your_Database ). Aqui vo asinstrues para azer isso:

    1. Faa login no PhpMyAdmin e selecione o banco de dados a partir do qual deseja azer obackup.

    2. Clique na guia Export (mostrada na Figura 1-6) no menu superior.

    Figura 1-6:A ferramenta PhpMyAdmin muito mais intimidante que o WordPress, porm eficiente

    3. No lado esquerdo, certique-se de que todas as tabelas necessrias estejam marcadas (olink Select All vai ajudar nisso). Voc deve selecionar todas as tabelas, em princpio, amenos que tenha outras coisas no mesmo banco de dados.

    4. No lado direito, marque a caixa de seleo Structure e, em seguida, selecione Add DROPABLE, Add AUO_INCREMEN value, e Enclose table and eld names withbackquotes. Marque tambm a caixa de seleo Data, mas deixe as opes internasdesmarcadas.

    5. Role para baixo e marque a caixa de seleo Save as le; a seguir, selecione o tipo dearquivo para download, que dever ser provavelmente um compactado.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    32/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    21

    6. Clique no boto Go. Isto ir azer o download do banco de dados, que voc importar paraseu novo servidor.

    7. Importar uma cpia de banco de dados usando PhpMyAdmin ainda mais cil.Certique-se de que voc criou um banco de dados com o mesmo nome, nome de usurio

    e senha que tinha no servidor anterior. Isso signica que voc no precisar alterar oarquivo wp-cong.php.

    8. Importe a cpia para o novo banco de dados azendo login em seu gerenciador de MySQLavorito. Se estiver usando PhpMyAdmin, basta selecionar o banco de dados e selecionar aguia Import (ao lado de Export) no menu superior. Use a erramenta de importao paraencontrar a cpia de banco de dados de que voc ez download, e importe esse arquivo.

    9. Por m, aa o download da instalao completa do WordPress a partir de seu servidorantigo, e aa o upload dessa instalao da mesma orma, para o servidor novo. Mais uma

    vez, aa alguns testes usando os endereos temporrios do seu servio de hospedagem

    Web para garantir que tudo est uncionando corretamente. Direcione o domnio para onovo servidor, e quando o novo servidor resolver o domnio, tudo estar uncionandopereitamente.

    No entanto, voc pode no conseguir recriar o ambiente exatamente da mesma orma. Se esseor o caso, basta alterar o arquivo wp-cong.php conorme necessrio; provavelmente, vocprecisar alterar o nome do banco de dados, nome de usurio e senha, bem como,possivelmente, a necessidade de um servidor de banco de dados externo, que voc precisareditar.

    Migrar o WordPress de um servidor para outro pode parecer assustador no comeo, mas no

    to dicil quanto j oi. claro que, se voc tem um blog grande e no se sente conortvel paraazer as coisas atravs de interaces de administrao de banco de dados como PhpMyAdmin,isso pode parecer um pouco complicado demais. Busque ajuda, ou tente azer voc mesmo amigrao. Apenas certique-se de que voc tem todos os backups de que poderia precisar, e nobagunce as coisas no seu servidor antigo (atual), mas sim no novo. Anal de contas, vocsempre pode criar um novo banco de dados, instalar o WordPress nele e tentar outra vez.

    COMO TORNAR SUA INSTALAO DE WORDPRESSMAIS SEGURA

    H algumas medidas simples que voc pode tomar para tornar sua instalao de WordPressmais segura, e algumas bem complicadas. A primeira e principal tarea, no entanto, manter oWordPress atualizado. A cada nova verso, uma poro de alhas de segurana, bugs, e outraspossveis vulnerabilidades de segurana da instalao so eliminados, e se voc no zeratualizaes regulares, no vai obter essas correes.

    Voc tambm deve certicar-se de que duas Secret Keys estejam conguradas no arquivowp-cong.php. Elas tornam a instalao mais segura. Para mais informaes sobre SecretKeys, consulte o processo de instalao, explicado anteriormente neste captulo.Geralmente, elas esto conguradas, mas se voc usou um instalador automtico, podem

    no estar. No custa nada conferir no arquivo wp-cong.php e adicion-las se necessrio.

    Isso nos leva primeira dica. Verique o arquivo header.php do seu tema para ver se o cdigoa seguir est presente (quase sempre, ele estar):

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    33/339

    PARTE I:INTRODUO AO WORDPRESS

    22

    Em seguida, remova esse trecho!! Essa linha retorna a verso do WordPress que voc estusando, e mesmo que isso possa vir a ser til para bots e spiders em busca de estatsticas, nocompensa o risco adicional. Anal de contas, se sabido que uma determinada verso tem uma

    brecha de segurana e as pessoas esto procurando as instalaes dessa verso para exploraressa brecha, por que acilitar declarando abertamente a verso que voc est utilizando?

    USURIOS E SENHAS

    A primeira coisa que eu ao depois de instalar o WordPress criar um novo usurio comprivilgios de administrador e azer login com esse usurio em vez do usurio padro admin.Por qu? Porque todo mundo sabe que, se h um usurio chamado admin, essa conta templenas capacidades administrativas. Assim, se voc quisesse hackear uma instalao deWordPress, voc poderia comear buscando o usurio admin para tentar orar um login.Uma vez que voc entrou usando esse mtodo, pode azer o que quiser. Por isso, vale a penaexcluir o usurio admin depois de eito login pela primeira vez e criado uma conta adequada,

    j que o usurio admin j ter cumprido seu objetivo.

    Dito isto, apagar o usurio admin no garante que os hackers no encontraro outro usuriopara continuar tentando invadir o sistema. Se voc tiver arquivos de usurio em seu blog, elesentregaro o ouro aos hackers. Uma soluo possvel seria no exibir esses arquivos, ouquaisquer links para uma pgina de autor (exceto aqueles que voc criou ora do WordPress),mas o que voc az se sentir a necessidade de usar links para pginas de autor?

    A soluo ser esparso com as credenciais de conta. No preciso ter uma conta deadministrador para escrever ou editar postagens ou pginas; as credenciais de editor so maisque sucientes. bem verdade que se uma conta com status de editor or hackeada, isso vaiser ruim para seu site, uma vez que um editor pode azer uma poro de coisas, mas ao menosno uma conta de administrador, e isso impede que o pior acontea. Alm disso, voc azbackups regulares, no mesmo?

    As senhas so outro risco de segurana bvio. Provavelmente j lhe avisaram que sua senhadeve ser orte, uma senha longa e que use letras, nmeros, caracteres especiais, e assim pordiante. Faa isso: quanto mais complicada a senha, mais dicil ser para algum decir-la.

    MEDIDAS DE SEGURANA NO LADO DO SERVIDOR

    O usurio MySQL de seu banco de dados do WordPress, que alis no deve ser compartilhadocom qualquer outro sistema, no requer todos os privilgios de escrita. Na verdade, voc noprecisa ser capaz de bloquear tabelas e ndice, criar tabelas temporrias e reerncias, ou criarrotinas. Em outras palavras, voc pode limitar um pouco as capacidades para tornar o sistemamais seguro.

    Algumas pessoas recomendam tambm que voc adicione logins extras usando o .htaccess doApache. Eu, pessoalmente, no ao isso porque acho esses ormulrios de login irritantes.Alm disso, existem plug-ins capazes de azer um trabalho melhor (ver Captulo 9 para maisdetalhes).

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    34/339

    CAPTULO 1:ANATOMIA DE UMA INSTALAO DE WORDPRESS

    23

    Uma medida que voc talvez queira adotar certicar-se de que h um arquivo index.phpvazio ou um arquivo index.html em cada pasta que no possua um arquivo de ndice. Esse geralmente o padro no WordPress, mas no custa nada vericar. Isso impossibilita anavegao direta das pastas, algo que suportado por alguns servios de hospedagem Web.

    Outra questo no lado do servidor orar a criptograa SSL na hora de eetuar o login para oadmin do WordPress. Assim, ser muito mais dicil para os viles em potencial arejarem otrego enviado quando voc estiver trabalhando na interace de admin. muito cil orarSSL, basta adicionar o trecho de cdigo a seguir ao seu arquivo wp-cong.php, acima docomentrio Tats all, stop editing! Happy blogging:

    define('FORCE_SSL_ADMIN', true);

    A criptograa SSL no uncionar sem permisso de seu servidor. Alguns servidoresoerecero tudo o que voc precisa para ativar esse servio de dentro de sua interace deadmin, mas outros precisaro ativar o servio para voc, e podero at mesmo cobrar por isso.

    OLHANDO PARA A FRENTE

    No importa se esta sua primeira incurso ao mundo maravilhoso do WordPress, ou se vocj um usurio e desenvolvedor experiente. O importante que voc j entendeu a instalaobsica, tornou essa instalao mais segura e compreendeu que o WordPress uma grandepotncia em termos de publicao. Daqui para a rente, voc vai comear a construir sites ecriar plug-ins para atingir seus objetivos.

    O prximo passo mergulhar naquilo que az o WordPress dar o melhor de si. Voc podercomear a brincar com o loop, olhar para os temas e plug-ins e ativar essa mquina de ideiasque mora na sua cabea e cria todas aquelas adaptaes bacanas. O brilhantismo daplataorma WordPress est no ato de ela ser to exvel e permitir construir tantas coisas; noh dvidas de que voc car inspirado s de pensar nas possibilidades.

    Se voc possui uma instalao de WordPress para experimentar (de preerncia, algo que noseja muito pblico, pois voc pode estragar alguma coisa), tenha mo o seu kit para brincarna caixa de areia e prepare-se para mergulhar na sintaxe do WordPress.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    35/339

    SMASHING WORDPRESS

    CAPTULO

    2

    2

    AGORA QUE VOCj congurou suainstalao de WordPress, hora de azeralguma coisa com ela. Este captulo servepara voc aprender mais sobre WordPress.Ele no aborda cada arquivo no sistema emproundidade, mas serve como umaintroduo orma como o WordPressapresenta o contedo. Voc vai aprendersobre a importncia das template tags, assim

    como das conditional tags, e sobre comocontrolar o resultado e as aes dessas tagscom a passagem de parmetros. Voctambm pode dar uma olhada nos temas eem seu contedo, para entender melhorcomo os sites so construdos na plataormaWordPress.

    Vamos l.

    SINTAXE DO

    WORDPRESS

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    36/339

    PARTE I:INTRODUO AO WORDPRESS

    26

    WORDPRESS E PHP

    Daqui em diante, ser de grande ajuda se voc souber um pouco de PHP, (X)HML e CSS.Porm, se esses so conceitos estranhos para voc, no deixe de ler sobre eles, ao menos umpouquinho. Um bom lugar para comear visitando W3Schools (http://www.w3schools.com/) e o curso de introduo a PHP 101 da Zend (http://devzone.zend.com/article/627). Voc no precisa ser especialista no assunto, mas um mnimode conhecimento denitivamente necessrio.

    O WordPress escrito em PHP, uma linguagem de scripts popular, que oerece aosdesenvolvedores a possibilidade de construir praticamente qualquer coisa. Se souber ao menosum pouco de PHP, voc rapidamente ir compreender o WordPress e as vrias unes que eleoerece no espectro de plug-ins e temas, da perspectiva do desenvolvedor. Dito isso, voc noprecisa de experincia prvia com PHP para se divertir com WordPress. bem verdade queno conseguir criar plug-ins de WordPress, sem saber PHP, mas com certeza voc pode azer

    as coisas acontecerem usando as template tags (tags de modelo) integradas aos temas, e comisso pode ir longe. As template tags e as conditional tags (tags condicionais) ajudam odesenvolvedor a azer as coisas com o WordPress, sem precisar denir unes novas paratudo.

    Isso tudo est parecendo grego para voc? No se preocupe, mesmo que nunca tenha escritoOl, Mundo! usando um script PHP, no m deste livro voc ser capaz de construirpraticamente qualquer coisa relacioada a contedo usando WordPress

    WORDPRESS CODEX

    O WordPress Codex (ver Figura 2-1), um manual em ormato wiki encontrado em http://codex.wordpress.org, ser extremamente til quando voc comear a trabalhar com ocdigo. Voc deve se amiliarizar com esse manual, e adicionar aos seus avoritos a pginaprincipal. Sempre que quiser se aventurar a partir dos exemplos nos prximos captulos, ouquando quiser saber mais sobre um conceito, no Codex que voc encontrar as inormaesnecessrias para seguir adiante. Embora o Codex contenha inormaes bsicas e tutoriais,muitas vezes, voc vai retornar a algumas listas de reerncia, como a de template tags(http://codex.wordpress.org/Template_Tags/), que contm uma explicaobreve, e a de reerncia de uno (http://codex.wordpress.org/Function_

    Reference), para suas necessidades mais avanadas.

    SOBRE O NCLEO DO WORDPRESS

    Qualquer bom sistema de gerenciamento de contedo (CMS) vai manter seus arquivosprincipais separados dos outros arquivos para que voc no estrague o cdigo que az o sistemauncionar, e o WordPress no exceo. No WordPress, esses so os arquivos internos que azemo WordPress uncionar. Essas so as partes do WordPress em que voc nunca deve mexer, porque qualquer atualizao na plataorma ir sobrescrever suas alteraes. Mexer nos arquivos doncleo do WordPress tambm pode prejudicar a uncionalidade de tema e plug-in, ou aindatornar sua instalao vulnervel a invases. Em suma, no toque nos arquivos do ncleo doWordPress. O nico arquivo de ncleo em que voc deve mexer o wp-cong.php (ver Captulo1), que contm os detalhes necessrios para sua instalao.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    37/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    27

    Figura 2-1: Acostume-se a navegar pelo WordPress Codex

    Fora do ncleo est a pasta wp-content, onde voc vai colocar temas, plug-ins e uploads dearquivos. udo isso unciona a partir do WordPress, por isso no h risco de realmenteestragar os arquivos do sistema (a menos que voc tenha instalado algum cdigo malicioso,mas isso uma questo completamente dierente) quando estiver desenvolvendo um site. Na

    verdade, a ideia geral que a nica vez que voc vai editar ou azer qualquer coisa ora dapasta wp-content ser durante a instalao do sistema e, possivelmente, ao mover os arquivosde instalao para uma pasta dierente. Naturalmente, h coisas bem legais que exigem aedio do arquivo.htaccess, e voc vai se deparar com plug-ins que pedem que voc aa coisasora da pasta wp-content. No h problemas em azer isso, claro, mas voc deve tomar umcerto cuidado. Em suma, sempre que or necessrio editar um arquivo ora da pastawp-content, voc deve car atento. Criar novos arquivos uma coisa, e a edio dos arquivosexistentes ca proibida, com exceo dos arquivos wp-cong.php e .htaccess.

    A questo toda, porm, que o ncleo do WordPress intocvel. No mexa com o ncleo a

    menos que voc realmente precise az-lo, e se esse or o caso, pense duas vezes, uma vez que,provavelmente, h uma soluo melhor.Alteraro ncleo uma m ideia, e por isso mesmo aestrutura de temas e plug-ins baseada na pasta wp-content to boa.

    TEMAS E ARQUIVOS DE MODELO

    De maneira simplista, um tema uma mscara para o seu blog. Voc pode escolher entredierentes temas para que o WordPress exiba seu contedo com designs variados, comomostram as Figuras 2-2 e 2-3, que apresentam a mesma postagem usando dois temasdierentes.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    38/339

    PARTE I:INTRODUO AO WORDPRESS

    28

    Figura 2-2: Esta captura de tela mostra uma postagem simulada usando o tema Twenty Ten

    Figura 2-3: A mesma postagem, mas visualizada com o tema Notes Blog

    Voc pode usar um tema bsico que simplesmente reproduza o contedo no esquema deapresentao padro, ou talvez queira alterar completamente a orma como o contedo do seusite exibido, usando qualquer opo de apresentao que voc desejar.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    39/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    29

    odo tema dever conter um arquivo de olha de estilo chamado style.css. Esse arquivocontm o estilo bsico, o nome do tema e os dados. Alm da olha de estilo, voc ter umaporo de arquivos PHP; alguns deles so absolutamente necessrios e outros so apenasmelhores prticas, para acilitar sua vida ou azer com que coisas interessantes aconteam.Esses arquivos de PHP so chamados de arquivos de modelo (em ingls, template les).

    Um dos arquivos que voc encontrar o index.php, que ser o arquivo principal paralistagens e resultados de busca, e ele ser seu arquivo de allback para situaes em que nohaja um arquivo de modelo disponvel. Outros arquivos de modelo comuns incluem sidebar.php, que contm o contedo da barra lateral, comments.php para a uncionalidade decomentrios e os arquivos header.php e ooter.php para o cabealho e rodap do seu site,respectivamente. Voc pode tambm ter um arquivo single.php para exibir individualmentesuas postagens, e um arquivo page.php para as pginas estticas do WordPress, e talvez umarquivo de modelo para os resultados de busca (search.php), alm de suas listagens decategorias em category.php, e assim por diante. Adicione qualquer modelo de pginaaplicvel em pginas de WordPress, e voc ter uma pequena amostra do quo verstil o

    WordPress pode ser.

    Com seus arquivos de modelo e as unes do WordPress, alm dos plug-ins e do cdigotradicional em PHP, voc pode azer seu site se comportar praticamente de qualquer ormaimaginvel. No quer ativar a uno comentar? Basta remover o cdigo! alvez voc queiraque a pgina de um produto especco seja completamente dierente? s criar um modelo depgina e aplicar um estilo que lhe agrade. As possibilidades so innitas, e mais adiante nestelivro voc ver como construir sites que so se parecem em nada como um blog comum.

    S para deixar as coisas um pouco mais complicadas, voc pode ter ainda mais uncionalidadeem seus temas. O arquivo unctions.php pode ornecer plug-ins com as caractersticas do seu

    tema, e virtualmente qualquer arquivo de modelo pode conter o cdigo PHP que az as coisaspara alm do WordPress. Ainda nem entramos no assunto dos widgets, que so reas onde

    voc pode armazenar elementos a partir da interace de admin. H tambm a opo de mantero loop (cdigo que gera o contedo principal do seu tema) separado dos seus arquivos, usandooutro arquivo de modelo, o loop.php e recursos similares. O loop ser abordado emproundidade no Captulo 3.

    A Figura 2-4 mostra a pgina Manage Temes, usada para gerenciamento de temas, nainterace de admin do WordPress. A partir dessa pgina, voc pode alterar seu tema com umnico clique, ou obter novos temas no repositrio de temas do wordpress.org.

    A melhor maneira de aprender sobre temas us-los. Instale um tema em um blog de teste,brinque um pouco e depois d uma olhada nos arquivos que o compem. No se preocupecom imagens, e esquea tambm da olha de estilo ( apenas um design), mas d umaolhada nos arquivos index.php, header.php e ooter.php para compreender a orma como ostemas so construdos. No muito complicado: primeiro voc carrega o header.php e, emseguida, carrega qualquer que seja o arquivo de modelo principal utilizado (como index.php, single.php, ou alguma outra coisa), possivelmente um arquivo sidebar.php e ento umooter.php.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    40/339

    PARTE I:INTRODUO AO WORDPRESS

    30

    Figura 2-4: A interface de admin do WordPress facilita o gerenciamento de temas

    Voc vai brincar com os temas mais adiante, mas, por enquanto, tudo o que precisa saber que os arquivos de modelo dos temas so onde toda a mgica acontece. L voc encontrar ocdigo que exibe o contedo que voc publicou usando o WordPress, e embora dierentes

    temas possam ter aparncias e comportamentos dierentes, eles esto simplesmente exibindo amesma coisa de dierentes ormas, graas aos arquivos de modelo.

    USANDO AS TEMPLATE TAGS

    Embora o WordPress seja escrito em PHP, ele na verdade uma estrutura. Voc pode usarPHP para azer coisas com seu tema ou plug-in de WordPress, mas a maior parte dauncionalidade gerenciada por template tags (tags de modelo). Se voc abrir um arquivo detema (praticamente qualquer arquivo com a extenso .php, como index.php ou single.php)

    encontrar uma poro de unes PHP compatveis, como, por exemplo, esta:

    Isso uma template tag, que resulta no nome do blog. A parte PHP, que consiste em no m, avisa ao WordPress que este deve processar o que quer que esteja alidentro nesse caso, a template tag bloginfo(). Dentro dos parnteses, voc encontrar oparmetro dentro das aspas. Em outras palavras, 'name' o parmetro acima (que resultariano nome do seu blog).

    Voc vai usar bastante a template tag bloginfo()em seus temas para, por exemplo,

    encontrar o diretrio do tema. Por exemplo, o cdigo a seguir resulta em uma imagemchamada smashing.gi em um arquivo de tema:

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    41/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    31

    Voc reconhecer a tag de HML img. A template tag bloginfo()aqui tem outroparmetro:template_directory. Isso resulta no caminho da pasta do tema, chamada detemplate_directory (e no theme_directory, como poderia ser esperado). Em seguida, bastaadicionar o nome do arquivo smashing.gi para completar o caminho, e voc tem um caminhode imagem potencialmente em uncionamento no seu tema. claro que voc precisaria ter a

    imagem tambm na pasta do tema.

    Assim, as template tags so essencialmente unes PHP que podem lidar com parmetrospara executar dierentes tareas. Algumas possuem valores padro, outras no, e algumaspossuem mais conguraes que outras para voc se divertir. A maioria delas unciona emqualquer local dos seus arquivos de tema de WordPress, mas algumas precisam estar no loop.(O loop basicamente o cdigo que resulta na exibio do contedo, como postagens oupginas. Os loops sero abordados no prximo captulo.)

    Voc encontra uma listagem completa de template tags no Codex em http://codex.wordpress.org/Template_Tags/. Consulte o Codex sempre que precisar azer algo ora

    do comum com seus temas, ou quando quiser azer alteraes em um tema j existente. Cadatemplate tag descrita em detalhes, juntamente com sua utilizao e uma amostra de cdigopara ajudar voc a entender. Esta a beleza do WordPress: apenas copiando e colando, vocpode obter um resultado dierente mesmo sem saber absolutamente nada de PHP.

    INCLUDE TAGS

    Certas template tags sero encontradas em praticamente qualquer arquivo de modelo de tema.As include tags (tags de incluso)so, basicamente, unes de incluso em PHP usadas para

    gerar o contedo dos arquivos necessrios dentro de seu tema. Em outras palavras, so apenasuma orma de acilitar um pouco o processo de obter um determinado cabealho, rodap ebarra lateral:

    As include tags so dierentes das template tags no sentido de que o que voc az incluiroutros arquivos, em vez de adicionar um tipo especco de uncionalidade ou elemento. Emoutras palavras, as include tags incluem os arquivos de modelo, que por sua vez contm as

    template tags.

    Voc vai encontr-las no arquivo index.php do seu tema, por exemplo, e elas automaticamenteincluem header.php, ooter.php, e sidebar.php, respectivamente, no local em que as tags soposicionadas. As duas primeiras no reconhecem parmetro algum, mas get_sidebar(),na verdade, possui suporte a barras laterais alternativas, com a adio de uma linha tag,como mostra o exemplo a seguir:

    Isso incluiria o arquivo sidebar-lef.php, em vez do padro sidebar.php, de modo que voc

    precisaria criar esse arquivo, naturalmente.

    Voc tambm pode encontrar a include tag get_template_part()carregando o loop apartir de seu prprio arquivo de modelo, da seguinte orma:

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    42/339

    PARTE I:INTRODUO AO WORDPRESS

    32

    O primeiro parmetro, loop,inorma ao WordPress que ele deve obter um modelo de loop. Osegundo parmetro diz ao WordPress para buscar um modelo de loop chamado loop-index.php. Se o segundo parmetro osse pageem vez de index, o WordPress teria buscado porloop-page.php. Caso o arquivo loop-index.php no osse encontrado, o WordPress usaria opadro loop.php. Falaremos mais sobre isso no Captulo 3.

    Caso voc queira incluir outros arquivos, como um cabealho alternativo, por exemplo, podeusar o seguinte trecho de cdigo em PHP :

    Essa uma incluso tradicional em PHP com TEMPLATEPATH,que mostra ao PHP ondebuscar o arquivo, que sua pasta de tema. isso que as outras template tags azem tambm:elas buscam seus respectivos arquivos na pasta de tema. Esse exemplo avisa ao WordPresspara incluir altheader.php onde quer que o trecho de cdigo em PHP seja posicionado. Damesma orma, voc pode acilmente incluir qualquer outra coisa, por isso esse mtodo muito til.

    Por m, h uma include tag para os comentrios, que qualquer tema que se preze contm, emcomments.php. Caso no haja um arquivo comments.php, o WordPress ir incluir um arquivoa partir de wp-includes/theme-compat/comments.php, que um arquivo de allbackdisponibilizado pelo sistema. Simplesmente posicione a tag comments_template()nolocal onde voc quer a uncionalidade de comentrios aparea, e remova a tag dos locais onde

    voc no acha que essa uncionalidade necessria:

    Ateno ao ato de que voc no pode passar parmetros para comments_template().

    PASSAGEM DE MLTIPLOS PARMETROS PARA UMA TEMPLATE TAG

    muito cil azer o seu contedo ser exibido usando template tags. Algumas delas noaceitaro quaisquer parmetros, e outras, como bloginfo(), aceitaro apenas um. Outras,

    no entanto, aceitaro vrios parmetros.

    Duas template tags realmente teis para blogueiros so edit_post_link()e edit_comment_link(). Elas basicamente azem a mesma coisa: adicionam um link de edios postagens ou aos comentrios de modo a permitir que voc (quando tiver eito logincomo um usurio que possui as credenciais necessrias) possa corrigir erros rapidamenteclicando no link de edio. Isso levar voc at a interace de admin, onde pode corrigir seuerro ou censurar aquele comentrio particularmente desagradvel (mas muitoprovavelmente vlido).

    Para usar essas tags, coloque-as no seu arquivo de tema, junto s postagens/comentrios.

    Ambas as tags uncionam da mesma maneira. As tags devem estar dentro do loop, que serdiscutido no prximo captulo, mas por enquanto tudo o que voc precisa saber que

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    43/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    33

    edit_post_link()vai junto com o cdigo que gera as postagens, e, de modo semelhante,edit_comment_link()vai junto com o cdigo que gera os comentrios.

    O exemplo a seguir mostra a aparncia de edit_post_link()passando seus parmetros--padro:

    Se voc colocar esse trecho de cdigo em seu tema, ter um link com o texto Edit Tis ondequer que voc coloque o cdigo. Suponhamos que queira que esse link aparea em uma linhaprpria, dizendo Admin antes do link, e Edite esta postagem ao invs do padro Edit this.Simplesmente use o seguinte:

    Como voc pode ver, edit_post_link()suporta trs parmetros. O primeiro deles o

    texto do link, 'Edite esta postagem'nesse caso, e o segundo o texto que precede olink. Lembre-se de que queramos que o link de edio aparecesse em um pargraoseparado, precedido por Admin, ento aqui est '

    Admin: '. (Ateno para o espaoem branco aps o texto para deixar um pouco de espao antes do link.) Por m, o terceiroparmetro o que vai aps o link, que apenas '

    'uma vez que voc precisa paraechar a tag

    .

    Em outras palavras, edit_post_link() capaz de lidar com trs parmetros, e eles sopassados, neste sentido, para alar um pouco em PHP:

    Lembre-se de que os parmetros so passados entre aspas e separados por vrgulas e umespao para torn-los mais legveis.

    No to complicado, no mesmo? Voc s precisa saber quais os parmetros devem serpassados, e em que ordem eles devem ser passados. A ordem importante: sem a ordemcorreta, voc pode criar o link com o texto errado, o que com certeza arruinaria seu design,ou, na melhor das hipteses, a validao do site.

    Vejamos agora algo um pouco mais complicado:

    Essa template tag ir gerar uma nuvem de tags exibindo at 45 tags, com a menor em onte 8pt (pontos), e a maior em 22 pt. Elas so exibidas em uma lista e classicadas por nome, emordem crescente. Sabemos disso porque esses so os valores padro, e h uma poro deles,como voc pode ver na abela 2-1. Na verdade, a template tag wp_tag_cloud() capaz depassar 13 parmetros.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    44/339

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    45/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    35

    O valor de ordenamento RAND, est em caixa alta. Isso intencional; assim que voc passa osdados de ordenamento (as outras opes so ASCpara crescente e DESCpara decrescente).Alm disso, voc deve ter percebido que tanto smallestquanto largestoram colocadas

    antes da opo de unidade. Essa uma boa orma de colocar os vrios parmetros na ordemem que so descritos, pois assim voc ser capaz de encontr-los com maior acilidade sempreque precisar editar o cdigo ou investigar algo.

    MAIS SOBRE PARMETROS

    Uma vez que voc estar azendo muita coisa com as template tags, crucial ter umacompreenso acerca dos parmetros. H trs tipos de template tags, que j oram abordados. Oprimeiro tipo no aceita parmetros, o segundo aceita um ou vrios parmetros entre aspas, eo terceiro tipo o chamadoquery style,que separa as diversas opes com o caractere &.

    Naturalmente, a no passagem de um parmetro signica que voc acaba de posicionar atemplate tag no local em que precisa que ela esteja, e isso tambm vale para as outras templatetags, uma vez que existe uma sada padro. Os problemas surgem quando voc precisa alteraressa sada padro, e, portanto, os parmetros.

    Nos exemplos anteriores, voc j ez tudo isso. Lembre-se de que voc passou apenas umainormao em um parmetro para a template tag bloginfo():

    Em seguida, voc passou um parmetro em estilo PHP, com a template tag edit_post_link(). Aqui, voc disse template tag qual deveria ser o texto do link, e o que deveria virantes e depois dele, separando cada instruo com uma vrgula e colocando os dados entreaspas:

    Por m, voc passou um monte de opes dentro de um parmetro query style para gerar umanuvem de tags com wp_tag_cloud(). Esse mtodo divide os parmetros com &, e permiteque voc altere apenas as conguraes que desejar:

    COMPREENDENDO TIPOS DE DADOS

    Existem trs tipos de dados que voc pode passar para template tags: linhas, nmeros inteirose booleanos. Embora a denio de template tag (conorme o wiki do WordPress Codex) digaexatamente como passar dados para essa template tag em particular, importante saber o queest por trs dela para que voc possa selecionar o tipo correto.

    O primeiro tipo de dados strings,que consiste em linhas de texto. O exemplobloginfo('name') uma linha (string), uma vez que voc est dizendo que o parmetro 'name'. As strings podem ser encontradas dentro de aspas simples ou aspas duplas (ambas

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    46/339

    PARTE I:INTRODUO AO WORDPRESS

    36

    fazem a mesma coisa), embora a verso de aspas simples seja muito mais utilizada nosexemplos deste livro.

    O segundo tipo de dados integers.Os integers so nmeros inteiros, como 55900 ou -3. Vocpode pass-los entre aspas, se quiser, mas isso no necessrio. Eles so geralmente usados

    quando voc precisa buscar algo que possui uma ID, o que bem comum. Mais adiante, vocver template tags e como conditional tags que fazem isso.

    Finalmente, h os parmetros Boolean,que so usado quando a informao s pode serverdadeira ou falsa. Voc pode passar essa informao em caixa alta (TRUEou FALSE), emcaixa baixa (trueou false), ou usando nmeros (sendo 1verdadeiro e 0falso). Voc nopode colocar booleanos entre aspas; eles sempre aparecem sozinhos. Por exemplo, a templatetag get_calendar()requer apenas uma instruo, que exibir a data completa ou apenasuma abreviao de uma nica letra. True o valor padro, que exibe a primeira letra donome do dia (por exemplo, M para Monday do ingls, segunda-feira), por isso, se vocquiser exibir Monday ao invs de M, necessrio definir get_calendar()para false:

    Outro exemplo de uso de parmetro Boolean a template tag the_date(), usadanormalmente para exibir a data de uma postagem. Voc pode, por exemplo, usar essainformao em seu prprio script PHP, e no exibir nada a partir da tag the_date(). Vocpode alterar o formato de sada da data (a primeiro linha no parmetro), o que aparece antesda data de sada (a segunda linha), e o que vem depois dela (terceira linha). O quarto comandoque voc pode passar, no entanto, um Boolean que indica se o sistema deve ou no exibir ouno (o padro true). Digamos que voc pretende colocar a data no formato ano-ms-dia

    (Y-m-d de acordo com o manual do PHP para funes de data; o WordPress aceita todas elas)dentro de um pargrafo. O cdigo ficaria assim:

    No entanto, se voc quiser usar isso com PHP fora das funes do WordPress, por algummotivo, sem exibir sada alguma, voc pode configurar a tag para falseusando a opoechoque essa template tag possui. Essa a ltima coisa que aparece, e um valor de Boolean;por isso, voc no vai colocar o valor entre aspas:

    Isto lhe daria o mesmo resultado, sendo ele ano-ms-dia dentro de uma tag

    , mas a sadadisso seria nada, de modo que, se voc quiser usar isso com o seu prprio cdigo PHP, esta amaneira de proceder.

    Lembre-se de que strings consistem em texto entre aspas, integers so nmeros inteiros, e queparmetros Boolean podem ser true (verdadeiros) ou false (falsos), sem usar aspas. Tendo issoem mente, vai ser muito mais fcil entender as template tags que voc usar para construirsites muito bacanas no WordPress mais adiante.

  • 7/23/2019 Smashing Wordpress - Alm Do Blog

    47/339

    CAPTULO 2:SINTAXE DO WORDPRESS

    37

    CONDITIONAL TAGS

    As conditional tags (tags condicionais) so extremamente teis. Voc ir utiliz-las emarquivos de modelo do seu tema e, como o nome sugere, elas servem para congurar diversascondies. Em outras palavras, voc pode us-las para exibir coisas dierentes, dependendo da

    situao. Um bom exemplo a conditional tag is_home(), que verica se voc est ou nona pgina inicial. Utilize essa tag para gerar uma saudao, j que essa a coisa educada aazer:

    Isso resultaria em um pargrao com a classe welcomeo texto exibido dentro dele. Ento

    voc tem um teste simples para especicar se determinada pgina ou no a pgina inicialis_home(),e em seguida uma resposta com o pargrao, caso trate-se da pgina inicial, deato. Esse um exemplo bem direto, ento vamos tentar algo dierente. Suponha que voc temuma categoria especca que deveria ter uma barra lateral dierente do resto do site. Voc pode

    vericar isso usando a conditional tagis_category()e, ento, gerar outra barra lateral casoseja necessrio. Sempre que houver uma outra pgina dentro do site, use a include tagtradicional get_sidebar().

    O cdigo a seguir ir substituir o ragmento de PHP get_sidebar()nos arquivos demodelo do tema onde or necessrio, o que provavelmente signica arquivos como index.php,

    category.php, single.php e assim por diante:

    Aqui, voc est perguntando se a categoria very-special, que o slug de categoria(usado em links permanentes, etc.) nesse caso. Voc poderia ter pedido a ID da categoria bemcomo o nome da catego