WordPress.org (Português)
Os modelos de página são um tipo específico de arquivo de modelo que pode ser aplicado a uma página ou grupos de páginas específicos.
Observação: A partir do WordPress 4.7, os modelos de página suportam todos os tipos de postagem. Para obter mais detalhes sobre como definir um modelo de página para tipos de postagem específicos, consulte o exemplo abaixo.
Como um modelo de página é um tipo específico de arquivo de modelo, aqui estão alguns recursos distintos dos modelos de página:
- Modelos de página são usados para alterar a aparência de uma página.
- Um modelo de página pode ser aplicado a uma única página, seção de página ou classe de páginas .
- Os modelos de página geralmente têm um alto nível de especificidade, visando uma página individual ou grupo de páginas. Por exemplo, um modelo de página denominado
page-about.php
é mais específico do que os arquivos de modelopage.php
ouindex.php
já que afetará apenas uma página com o slug “sobre”. - Se um modelo de página tiver um nome de modelo, os usuários do WordPress que editarem a página terão controle sobre qual modelo será usado para renderizar a página.
Usos para modelos de página #Usos para modelos de página
Os modelos de página exibem o conteúdo dinâmico do seu site em uma página, por exemplo, postagens, atualizações de notícias, eventos de calendário, arquivos de mídia , etc. Você pode decidir que deseja que sua página inicial tenha uma aparência específica, que seja bem diferente de outras partes do seu site. Ou pode exibir uma imagem em destaque com um link para uma postagem em uma parte da página, tenha uma lista das últimas postagens em outros lugares e use uma navegação personalizada. Você pode usar modelos de página para conseguir essas coisas.
Esta seção mostra como construir modelos de página que podem ser selecionados por seus usuários por meio de seus telas de administração.
Por exemplo, você pode construir modelos de página para:
- largura total, uma coluna
- duas colunas com uma barra lateral à direita
- duas colunas com uma barra lateral à esquerda
- três colunas
Parte superior
Modelos de página dentro da hierarquia de modelo #Page Templates dentro da hierarquia de modelo
Quando uma pessoa navega até o seu site, o WordPress seleciona qual modelo usar para renderizar essa página. Como aprendemos anteriormente na Hierarquia de modelo, o WordPress procura por arquivos de modelo na seguinte ordem:
- Modelo de página – se a página tiver um modelo personalizado atribuído, o WordPress procura por esse arquivo e, se encontrado , usa-o.
-
page-{slug}.php
– Se nenhum modelo personalizado foi atribuído, o WordPress procura e usa um modelo especializado que contém o slug da página. -
page-{id}.php
– Se um modelo especializado que inclui o slug da página não for encontrado, o WordPress procura e usa um modelo especializado nomeado com o ID da página. -
page.php
– Se um modelo especializado que inclui o ID da página não for encontrado, o WordPress procura e usa o modelo de página padrão do tema. -
singular.php
– Sepage.php
não for encontrado, o WordPress procura e usa o modelo do tema usado para uma única postagem, independentemente do tipo de postagem. -
index.php
– Se não for específico modelos de página são atribuídos ou encontrados, o padrão do WordPress volta a usar o arquivo de índice do tema para renderizar as páginas.
Alerta: há também um modelo definido pelo WordPress chamado paged.php
. Não é usado para o pós-tipo de página, mas para exibir várias páginas de arquivos.
Topo
Modelos de página Finalidade & Controle do usuário # Modelos de página Objetivo & Controle do usuário
Se você planeja fazer um modelo de página personalizado para o seu tema, deve decidir algumas coisas antes de prosseguir:
- Se o modelo de página será para uma página específica ou para qualquer página; e
- Que tipo de controle de usuário você deseja disponibilizar para o modelo.
Cada modelo de página que tem um nome de modelo pode ser selecionado por um usuário ao criar ou editar uma página. A lista de modelos disponíveis pode ser encontrada em Páginas > Adicionar novo > Atributos > Modelo . Portanto, um usuário do WordPress pode escolher qualquer modelo de página com um nome de modelo, o que pode não ser sua intenção.
Por exemplo, se você deseja ter um modelo específico para sua página “Sobre”, pode não seja apropriado nomear esse modelo de página “Sobre o modelo”, pois estaria globalmente disponível para todas as páginas (ou seja, o usuário pode aplicá-lo a qualquer página). Em vez disso, crie um modelo de uso único e o WordPress renderizará a página com o modelo apropriado, sempre que um usuário visitar a página “Sobre”.
Por outro lado, muitos temas incluem a capacidade de escolher quantas colunas uma página irá cada uma dessas opções é um modelo de página disponível globalmente.Para dar aos seus usuários do WordPress essa opção global, você precisará criar modelos de página para cada opção e dar a cada um um nome de modelo.
Ditar se um modelo é para uso global ou uso singular é obtido pela maneira o arquivo é nomeado e se tem ou não um comentário específico.
Nota: Às vezes é apropriado ter um modelo disponível globalmente, mesmo que pareça ser um único caso de uso. Quando você está criando temas para lançamento, pode ser difícil prever o nome de um usuário para suas páginas. As páginas de portfólio são um ótimo exemplo, pois nem todo usuário do WordPress nomeará seu portfólio da mesma forma ou terá o mesmo ID de página e, ainda assim, eles podem querer usar esse modelo.
Topo
Organização de arquivo de modelos de página # Organização de arquivo de modelos de página
Conforme discutido em Organizando arquivos de tema, o WordPress reconhece os modelos de página de subpasta. Portanto, é uma boa ideia armazenar seus modelos de página globais nesta pasta para ajudar a mantê-los organizados.
Alerta: Um arquivo de modelo de página especializado (aqueles criados para uso apenas uma vez) não pode estar em uma subpasta, nem, se estiver usando um tema filho, na pasta do tema pai.
Início
Criando modelos de página personalizados para uso global #Creating modelos de página personalizados para uso global
Às vezes, você desejará um modelo que possa ser usado globalmente por qualquer página ou por várias páginas. Alguns desenvolvedores agruparão seus modelos com um prefixo de nome de arquivo, como page_two-columns.php
Alerta: Importante! Não use page-
como prefixo, pois o WordPress interpretará o arquivo como um modelo especializado, destinado a ser aplicado a apenas uma página do seu site.
Para obter informações sobre convenções de nomenclatura de arquivo de tema e nomes de arquivo que você não pode usar, consulte nomes de arquivo de tema reservados.
Dica: Um método rápido e seguro para criar um O novo modelo de página é fazer uma cópia de page.php
e dar ao novo arquivo um nome de arquivo distinto. Dessa forma, você começa com a estrutura HTML de suas outras páginas e pode editar o novo arquivo conforme necessário.
Para criar um modelo global, escreva um comentário PHP de abertura no topo de o arquivo que indica o nome do modelo.
<?php /* Template Name: Example Template */ ?>
É uma boa ideia escolha um nome que descreva o que o modelo faz, pois o nome fica visível para os usuários do WordPress quando eles estão editando a página. Por exemplo, você pode nomear seu modelo página inicial, blog ou portfólio.
Este exemplo do tema TwentyFourteen cria um modelo de página chamado Página de largura total:
<?php/*** Template Name: Full Width Page** @package WordPress* @subpackage Twenty_Fourteen* @since Twenty Fourteen 1.0*/
Depois de enviar o arquivo para a pasta do seu tema (por exemplo, página- modelos), vá para a página > Editar tela no painel de administração.
On the right hand side under attributes you"ll see template. This is where users are able to access your global page templates.
Tip: The select list has a maximum width of 250px, so longer names may be cut off.
Início
Criando um modelo de página personalizada para uma página específica #Criando um modelo de página personalizada para uma página específica
Conforme mencionado na página Hierarquia do modelo, você pode criar um modelo para uma página específica. Para criar um modelo para uma página específica, copie seu arquivo page.php
existente e renomeie-o com o slug ou ID de sua página:
-
page-{slug}.php
-
page-{ID}.php
Por exemplo: Sua página Sobre tem um slug sobre e um ID de 6. Se a pasta do seu tema ativo tiver um arquivo chamado page-about.php
ou page-6.php
, o WordPress encontrará e usará automaticamente esse arquivo para renderizar a página Sobre.
Para serem usados, os modelos de página especializados devem estar na pasta do seu tema (ou seja, / wp-content / themes / my-theme-name /).
Superior
Criação de modelos de página para tipos de postagem específicos #Criação de modelos de página para tipos de postagem específicos
Por padrão, um modelo de página personalizado estará disponível para o tipo de postagem “página”.
Para criar um modelo de página para tipos de postagem específicos, adicione uma linha sob o nome do modelo com os tipos de postagem que você gostaria que o modelo suportasse.
Exemplo:
<?php/*Template Name: Full-width layoutTemplate Post Type: post, page, event*/// Page code here...
Alerta: esta capacidade de adicionar modelos de página aos tipos de postagem diferente do tipo de postagem “página” é compatível apenas com WordPress 4.7
Quando pelo menos um modelo existe para um tipo de postagem, a caixa de meta Atributos da postagem será exibida no back end, sem a necessidade de adicionar suporte a tipo de postagem para atributos de página ou qualquer outra coisa. O rótulo Atributos de postagem pode ser personalizado por tipo de postagem usando o rótulo atributos ao registrar um tipo de postagem.
Compatibilidade com versões anteriores:
Digamos que você queira lançar um tema publicamente com suporte para modelos de tipo de postagem. As versões do WordPress anteriores a 4.7 irão ignorar o cabeçalho do tipo de postagem do modelo e mostrar o modelo na lista de modelos de página, embora funcione apenas para postagens regulares.Para evitar isso, você pode conectar-se ao filtro theme_page_templates para excluí-lo da lista. Aqui está um exemplo:
Expandir o código-fonte completoRecolher o código-fonte completo
Dessa forma, você pode oferecer suporte a postagem personalizada digite modelos no WordPress 4.7 e além, mantendo total compatibilidade com versões anteriores.
Observe que theme_page_templates é na verdade um filtro de tema dinâmico _ {$ post_type} _templates. A parte dinâmica do nome do gancho, $ post_type, refere-se ao tipo de postagem suportado pelos modelos. Por exemplo. você pode conectar-se ao theme_product_templates para filtrar a lista de modelos para o tipo de postagem do produto.
Início
Usando tags condicionais em modelos de página #Usando tags condicionais em modelos de página
Você pode fazer alterações menores e específicas da página com as Tags condicionais no arquivo page.php
do seu tema. Por exemplo, o código de exemplo abaixo carrega o arquivo header-home.php
para sua página inicial, mas carrega outro arquivo (header-about.php
) para sua página Sobre, e então aplica o padrão header.php
para todas as outras páginas.
if ( is_front_page() ) :get_header( "home" );elseif ( is_page( "About" ) ) :get_header( "about" );else:get_header();endif;
Você pode aprender mais sobre tags condicionais aqui.
Parte superior
Identificando um modelo de página #Identificando um modelo de página
Se seu modelo usa a função body_class()
, o WordPress imprimirá classes na tag body
para o nome da classe do tipo de postagem (page
), o ID da página (page-id-{ID}
) e o modelo de página usado. Para o page.php
padrão, o nome da classe gerado é page-template-default
:
<body class="page page-id-6 page-template-default">
Ao usar um modelo de página personalizado, a classe page-template
irá imprimir, junto com uma classe nomeando o modelo específico. Por exemplo, se o seu arquivo de modelo de página personalizado tiver o seguinte nome:
<?php/* Template Name: My Custom Page */?gt;
O HTML renderizado gerado será o seguinte:
<body class="page page-id-6 page-template page-template-my-custom-page-php">
Observe o page-template-my-custom-page-php
classe que é aplicada à tag body
.
Parte superior
Funções de modelo de página #Page Template Functions
Essas funções e métodos integrados do WordPress podem ajudá-lo a trabalhar com modelos de página:
-
get_page_template()
retorna o caminho do modelo de página usado para renderizar a página. -
wp_get_theme()->get_page_templates()
retorna todos os modelos de página personalizados disponíveis para o tema ativo no momento (get_page_templates()
é um método da classeWP_Theme
). -
is_page_template()
retorna verdadeiro ou falso dependendo de se um modelo de página personalizado foi usado para renderizar a página. -
get_page_template_slug()
r retorna o valor do campo personalizado_wp_page_template
(null
quando o valor está vazio ou “padrão”). Se uma página foi atribuída um personalizado modelo, o nome do arquivo desse modelo é armazenado como o valor de um campo personalizado denominado"_wp_page_template"
(nawp_postmeta
tabela do banco de dados). (Os campos personalizados que começam com um sublinhado não são exibidos no módulo de campos personalizados da tela de edição.)