Início » Desenvolvimento WordPress » A atuação da index.php x Configurações de leitura do WordPress
Desenvolvimento WordPress

A atuação da index.php x Configurações de leitura do WordPress

Em mais esse artigo focado na hierarquia de templates do WordPress vamos tentar esclarecer a atuação da index.php e o que muda de acordo com as configurações de leitura selecionadas.
Escrito Por Leandro Vieira em dezembro de 2015 /5 min de leitura
Conteúdo escrito por humano

A Hierarquia de templates é, sem dúvida, um dos assuntos mais importantes do WordPress. Não há como desenvolver um tema para o WordPress sem conhecer suas templates e qual hierarquia elas seguem.

Em mais esse artigo focado na hierarquia de templates do WordPress vamos tentar esclarecer a atuação da index.php e o que muda de acordo com as configurações de leitura selecionadas.

A atuação da index.php

Você sabe porque o arquivo index.php é o único arquivo “PHP” requerido em um tema WordPress?

É porque na verdade o arquivo index.php funciona como um curinga dentro da hierarquia de templates do WordPress. Acredita-se muito que ele é o arquivo para exibir o conteúdo da página inicial, mas na verdade, qualquer página dentro do WordPress pode ter seu conteúdo exibido pelo arquivo index.php.

Se dermos uma outra olhada na imagem completa da hierarquia de arquivos podemos ver bem claramente que em todos os casos testados na hierarquia se as templates mais específicas ou mesmo as mais genéricas não existirem, quem vai exibir o conteúdo é a index.php. Ou seja, essa template pode assumir a exibição de qualquer tipo de conteúdo dentro do WordPress.

Hierarquia de templates - opengraph

Templates para a página inicial

Já que a index.php não necessariamente é o arquivo utilizado para exibir a página inicial vamos examinar com mais detalhes a hierarquia de templates para descobrir então quais arquivos podemos utilizar para esse fim.

hierarquia-de-templates-index.php

A quantidade de arquivos possíveis para exibir o conteúdo da página inicial de um site em WordPress é maior do que imaginamos no ínicio. Dependendo das configurações de leitura do WordPress podemos ter a template home.php ou front-page.php. E ainda dependendo da situação, a template page.php/singular.php, ou uma de suas variações (page-$id.php, page-$slug.php, $custom.php), poderá ser utilizada como a página inicial do site.

Configurações de leitura do WordPress

A página de configurações de leitura do WordPress (Menu Configurações >> Leitura) define opções que podem alterar a query padrão de cada página requisitada. Podemos definir nessa página a quantidade de posts serão recuperados do banco para montar uma query de listagem, a quantidade de posts do feed, se ele irá usar o texto completo do post ou o resumo e até a visibilidade pelos mecanismos de busca.

Mas para o artigo vamos focar nas configurações da página inicial.

A página inicial mostra seus posts recentes

pagina-inicial-mostra-postsEssa é a configuração padrão para a opção, também por isso é a mais comum. Nesse caso o comportamento do WordPress ao acessarmos a URL da página inicial do site, é montar a query com uma listagem dos últimos posts cadastrados na administração.

O mais comum nesse caso é que o desenvolvedor utilize a index.php para exibir essa listagem de posts, porém com essa configuração também podemos utilizar o arquivo front-page.php ou o home.php, deixando assim a index.php livre para ser um arquivo de fallback, que é o seu propósito inicial.

Primeiro o WordPress irá procurar pelo arquivo front-page.php, não existindo esse arquivo será procurado o home.php, caso essa template também não tenha sido criada é que chegamos à index.php.

A página inicial mostra uma página estática

pagina-inicial-mostra-pagina-estaticaCaso o projeto tenha uma página inicial que não exiba listagem de últimos posts mas sim vários destaques e outros tipos de conteúdo essa opção pode ser utilizada. Para isso vamos ter que criar uma página na administração do WordPress e selecionar essa página na opção Página Inicial.

A partir desse momento a template home.php não será mais considerada para a exibição da página inicial do site. Em seu lugar entra a possibilidade de utilização da page.php/singular.php ou uma de suas variações. Claro, existindo a template front-page.php ela terá prioridade sobre qualquer outra e será utilizada para a exibição desse conteúdo.

Nessa opção também podemos configurar uma página para exibir a listagem de últimos posts do site. A página deve ser criada na administração antes e selecionada na opção Página de posts.

A partir desse momento essa página não utilizará mais as templates page.php ou singular.php nem nenhuma de suas variações, e passará a considerar a template home.php para exibir a listagem de posts. Não existindo o arquivo home.php no tema será considerada a index.php.

Para fixar o aprendizado desse post aconselho todos a criarem um tema fictício e “brincar” com as possibilidades de configurações do WordPress e de templates. Assim entenderão na prática a lógica do WordPress para a hierarquia de templates. Essa dica é válida também para todas as postagens que já tivemos acerca da hierarquia de templates do WordPress, como a de Páginas Singulares e de Listagem de Posts.

Cursos de WordPress para Desenvolvedores

Leandro Vieira

Uma das grandes referências de WordPress no Brasil, entusiasta e evangelista da plataforma. Fundador e CEO da Apiki, empresa especializada no desenvolvimento web com WordPress.
Qual nota você da para este artigo?
Ruim

O que você achou disso?

Clique nas estrelas

Média da classificação 0 / 5. Número de votos: 0

Nenhum voto até agora! Seja o primeiro a avaliar este post.

Excelente
Artigos Relacionados

Construa seu site WordPress sob medida com os maiores especialistas em WordPress da America Latina
Conheça a Apiki

Faça um comentário
Cadastre-se rápido

Fazer Login