Busca

Boas práticas de Desenvolvimento com Padrões Web


Hierarquia de arquivos do Wordpress

O Wordpress utiliza uma hierarquia de arquivos para a criação de themes. Para criar bons sites e blogs baseados em Wordpress, é importante que você entenda essa hierarquia.

08/04/2009 por Diego Eis
24 Comentários

Para criar um bom theme para Wordpress, você precisa conhecer bem a estrutura de arquivos que são utilizados no construir estes themes. São usados vários arquivos que setorizam as várias funcionalidades do blog ou site. Veja abaixo arquivos que são normalmente utilizados:

O Wordpress usa as Query String de cada link do seu site para saber qual arquivo ele deve mostrar na página. Ele decide qual tipo de página será requisitada – uma página de busca, categoria, a home etc.
Ele procura esses arquivo dentro do diretório do seu template. Caso o WP não encontre o arquivo requisitado, ele escolhe o template padrão do index.php para ser usado. Há uma hierarquia de arquivos de template que o Wordpress irá requisitar caso ele não encontre o correto.

Por exemplo: imagine que seu visitante clique em um link de seu site que o leve para dentro de uma categoria. O Wordpress irá procurar o arquivo referente a categoria personalizada. Suponha que o ID da categoria seja 40, ele procuraria o arquivo category-40.php, que é o arquivo que personaliza a página desta categoria. Caso ele não o encontre, o Wordpress procura pelo arquivo genérico que gera as páginas de categorias, no caso o category.php. Contudo, se ele não encontrá-lo também, ele procurará o archive.php que é o documento que gera as páginas de históricos e arquivos. Caso ele também não o encontre, ele irá utilizar o arquivo principal index.php
Assim, seu sistema/blog/site não fica com erros por não encontrar um determinado documento.

Abaixo segue a hierarquia de alguns arquivos. Você pode ver muito mais detalhes aqui.

Home Page
  1. home.php
  2. index.php
Visualizando o post
  1. single.php
  2. index.php
Páginas
  1. nomedapagina.php – Seria um arquivo para uma página especifica personalizada
  2. page.php
  3. index.php
Category display
  1. category-id.php – Categoria específica, onde o ID é o número de identificação da categoria
  2. category.php
  3. archive.php
  4. index.php
Histórico
  1. date.php
  2. archive.php
  3. index.php
Tag
  1. tagslug.php – Arquivo personalizado para uma tag específica
  2. tag.php
  3. archive.php
  4. index.php
404
  1. 404.php
  2. index.phpc

Na documentação do Wordpress há um diagrama muito esclarecedor:
template_hierarchy

Muitos desenvolvedores por aí, aconselham que você comece seu theme a partir de um já pronto. Eu já vou além e sugiro que você comece fazendo os arquivos à medida em que for precisando dos arquivos. Assim você evita grandes quantidade de documentos inúteis na pasta do seu template. Isso é muito importante caso você esteja fazendo um site, por exemplo. Quanto mais organizado e menor a quantidade de arquivos, melhor. Mesmo assim, não atole todas as funções no index.php. Divida cuidadosamente as seções do site para não haver confusão em apenas um arquivo.

É possível saber quais os arquivos você precisará utilizar em seu template logo quando recebemos os documentos em HTML. Você pode utilizá-los como base para a criação dos arquivos dos templates. É a melhor maneira de começar criando um theme do zero.

No site do Wordpress há outras muitas informações importantes sobre a Hierearquia dos Arquivos.

24 Comentários

Sua opinião:

Vamos elevar o nível de discussão. Exponha sua opinião, sua crítica.



RSS dos comentários deste post
URL para Trackback

24 Comentários

Helder 08/04/2009 às 15:44

Muito bom artigo. Muito esclarecedor mesmo. Em relação a criação to tema, também prefiro começar do zero. Assim tenho controle de tudo que vou realmente usar.

Fernanda Prevedello 08/04/2009 às 16:04

Tbm sou a favor de se criar um theme de acordo com a necessidade, dessa forma dá para usar apenas o que for necessário, além de aprender a desenvolver melhor na ferramenta.

Edy Segura 08/04/2009 às 18:40

Excelente artigo Diego! Estava precisando desses conceitos! Obrigado!

Willian 08/04/2009 às 18:52

Bom artigo, uma dica para seguir na criação de themes para o wordpress é baixar um ‘blank themes’ para o wordpress. Eu baixei faz um tempo, não lembro aonde encontrei, mas o Sr. Google resolve.

Luiz Paulo 08/04/2009 às 19:41

Boa!
Nem sabia de todas as hierarquias :|

[]’s

André Amaral 09/04/2009 às 00:01

Muito interessante!

marcos_paiva 09/04/2009 às 09:28

Matou a pau!!
Nada como aportuguesar as documentação e ainda dar dicas!!

:D

Thalis Valle 09/04/2009 às 09:59

Ah, se não fosse o Wordpress. Muita gente passando fome.

Acelio F 09/04/2009 às 11:11

Muito bom.

Já tinha “constatado” em testes práticos, este fato da “Query String”, mas não tinha a compreensão da hierarquia e a possibilidade de interferir nela.

Esta da category-id foi empolgante pra mim.

Estava em dúvida sobre aplicar o wordpress em sites “não blog”, mas agora…

E vivas ao HTML5!

Alguém sabe como criar um “rascunho” de postagem que fique armazenado no Wordpress?
Como um “modelo”. Para usuários não familiarizados com HTML poderem publicar o conteúdo seguindo um padrão mais elaborado e diferente para cada sessão.
Imagino ter que fazer modelos em separado, para copiar e colar. Senão eles podem “destruir” um layout mais elaborado, postando pela interface original.

Luiz Aquino 09/04/2009 às 12:04

Você tem razão quando diz para começar o theme do zero, talvez um framework até ajude.

O problema em fazer um tema em cima de outro é que você pode querer mudar uma cor de link especifico, por exemplo, mas as marcações para links podem ter uma nomenclatura no css muito própria de quem fez.

Eu já tive muitos problemas com isso… mas agora com um framework as coisas ficam mais fáceis..

Abraços e sucesso!!!

Fernando Sergio Azevedo Neves Filho 09/04/2009 às 18:39

Ótimo post, eu não tinha lido sobre isso ainda :P .

Criação de sites Workaholics 09/04/2009 às 20:10

Cara muito bom o post, podia rolar um de Joomla!

Abraço

Thiago Cavalcanti 11/04/2009 às 23:54

Impressionante o quanto tem de tutorial por aí que omite completamente a existência desta hierarquia, além de outros fatores básicos.

Fica o pedido para o Diego fazer uma lista das outras coisas que ele considera importantes para quem faz temas para Wordpress.

Reginaldo Sousa 13/04/2009 às 15:07

Muito legal.
Até sabia de algumas partes dessa hierarquia, mas com esse tutorial ficou bem mais claro.

Alexsandro 16/04/2009 às 07:55

O artigo é muito bom, e estava precisando mesmo dele, pois estou tentando discernir como estrutura um wordpress deste para minha realidade, mas estou encontrando dificuldade pelo fato de ser muita coisa quando se baixa o wordpress. No entanto este seu artigo foi de suma importancia pra mim para que eu entenda como estruturar meus sites baseados em wordpress.

Um abraço e sucesso!

Alex

Clareamento Dental 16/04/2009 às 15:19

Excelente post! A tempo buscava novidades

Obrigada!

Gaby

Narley Fabricio 17/04/2009 às 19:37

Muito esclarecedor….!!!

Marcelo Torres 19/04/2009 às 19:48

Grande artigo, faz tempo que estava atrás disso

rmsramos » Um layout para cada categoria no WordPress. 08/05/2009 às 06:15

[...] de templates do Wordpress, se você não sabe do que estou falando recomendo que leia o artigo hierarquia de arquivos do wordpress no [...]

Danilo 04/06/2009 às 19:13

Ola Gostei do Tuto, tenho uma duvida , por que toda vez que eu copio algum conteudo d e um site e copio dentro de uma pagina criada no wordpress, ele so aparece metade e nao conteudo inteiro ?

assophism 29/10/2009 às 18:41

I studied all his issue, but don’t know what to say on it – just check out it later!

cheers,
______________
assophism
purchase soma online
http://board.muse.mu/member.php?u=127215

segurança na rede 28/12/2009 às 13:52

Otima sacada.
Mas gostaria de um link para obter mais informações, do tipo começar do zero sabe.