Eventualmente tenho sido questionado sobre como incluir páginas no WordPress 2.0. Mais especificamente, como incluir um formulário para contato no Blog ou uma página About (Sobre).

As explicações a seguir tomam como base essas questões de ordem prática mas se aplicam a qualquer outra página com essas características, ou seja, que necessitem de um template (veja a seguir) como no caso do formulário, ou da escrita de um texto digitado como se faz com um post, como na página Sobre.

Template

Um template para o WP nada mais é do que um programa em PHP. O que diferencia o template de um programa comum são as suas linhas de código iniciais, que permitem ao WP identificá-lo como tal e assim poder ser utilizado no seu Blog quando se fizer necessário. Veja, por exemplo, as do formulário de contato:

<?php
/*
Template Name: contact
*/
?>

Para os fins do que aqui será tratado os templates devem estar localizados na pasta de seu tema (/wp-content/themes/nome_do_seu_tema/).

Os templates, se existem, podem ser visualizados no menu Escrever >> Escrever Página do Painel de Administração na coluna direita sob o rótulo Modelo de Página. O tema BLIX, o adotado pelo VICHE, possui os templates archives e contact, além do padrão do WP, conforme indicado na figura abaixo:

Lista de Templates no WP

O Título Curto (para URIs) é utilizado para o link da página, em substituição ao seu título, desde que o seu Blog tenha os seus permalinks customizados como Date and name based, como você pode verificar passando o mouse sobre o link CONTATO localizado no topo do VICHE. Se a customização for a Default a página é identificada como endereço_do_Blog/?page_id=número_da_página. Para saber como seus permalinks estão customizados veja o menu Opções >> Permalinks no Painel de Administração.

A observação acima foi colocada porque já vi alguns temas que não usam a função get_page_link($page_id) do WP para referenciar as páginas, implicando na necessidade de fazê-lo manualmente.

A Página Contato

Após a breve e simples definição de template e as explicações colocadas, o processo para incluir a página contato, ou outra como a archives, torna-se bastante simples. Veja os passos:

  1. Executar o menu Escrever >> Escrever Página >> Criar nova Página no Painel de Administração;
  2. Digitar o Título da Página, por exemplo, Entre em Contato;
  3. Escrever na aba Conteúdo da Página, se necessário, o texto desejado;
  4. Abrir o Modelo de Página e selecionar o template;
  5. Digitar, se for o caso, o Título Curto;
  6. Publicar a página.

A figura ilustra o resultado dos passos acima para a página contato:

Inclusão da Página Contato

Se o seu tema, como é o caso do BLIX, monta automaticamente os links que referenciam as páginas, nada mais é necessário além do template contact.php armazenado na pasta wp-content/themes/nome_do_tema como dito anteriormente.

Já para o tema Modern World, por exemplo, que não adota no programa header.php, onde se encontra a sua barra de navegação, o referenciamento automático, é suficiente aplicar o procedimento antes explicado:

<div id="navigation">
<a xhref="<?php bloginfo('url'); ?>">Home</a>
<a xhref="<?php echo get_page_link('2'); ?>">About</a>
<a xhref="http://www.blogviche.com.br/#" mce_href="http://www.blogviche.com.br/#">Blog</a>
<a xhref="http://www.blogviche.com.br/#" mce_href="http://www.blogviche.com.br/#">Portfolio</a>
<a xhref="http://endereço_do_blog/?page_id=20">Contato</a>
</div>

onde é considerado que o id da página é 20. Alternativamente, pode-se adotar o formato indicado na âncora About substituindo ‘2’ por ’20’. O id da página pode ser obtido no menu Gerenciar >> Páginas.

O programa contact.php foi testado por mim com vários temas e funcionou perfeitamente em todos eles, havendo necessidade de pequenos ajustes, em alguns casos, para a exibição correta do formulário. Se for do seu interesse faça o download.

No caso do uso do template archives.php os procedimentos são os mesmos, não havendo necessidade do passo 3.

A Página Sobre (About)

A diferença ocorre apenas no passo 4 acima onde em Modelo de Página deve ser selecionado o Modelo Padrão: (veja a primeira figura). E claro, a âncora deve ser a correspondente à pagina como indicado no código acima.

Exemplo de Ajuste em contact.php

Como uma das solicitações de auxílio, para inclusão da página contato, se referia ao tema Modern World, forneço, a título de ilustração, as alterações (indicadas em negrito) que precisam ser efetuadas para que o formulário seja exibido de forma adequada com este template:

<!-- /content -->

<?php get_sidebar(); ?>

<?php get_footer(); ?>

</div>