Um de nossos leitores nos perguntou como criar modelos personalizados de post único no WordPress.
Na WPBeginner, ajudamos muitos proprietários de sites a aprimorar seus blogs com layouts exclusivos para posts individuais. Modelos personalizados de post único permitem que você use designs diferentes para seus posts de blog, dando a cada um uma aparência distinta. Muitos temas do WordPress oferecem alguns modelos de página, mas você também pode criar os seus próprios, se necessário.
Neste artigo, mostraremos vários métodos para criar facilmente modelos personalizados de post único no WordPress, para que você possa escolher o que melhor atende às suas necessidades.

Quando Você Precisa de um Modelo Personalizado de Post Único?
Às vezes, você pode querer um visual e uma sensação diferentes para posts específicos em seu site WordPress. Por exemplo, você pode querer usar um layout diferente para artigos em destaque ou histórias de uma categoria específica.
É aqui que você precisa de um modelo personalizado de post único no WordPress.
Por padrão, o WordPress usa o modelo de post único com base na hierarquia de modelos do WordPress. Todos os temas vêm com um modelo single.php, e este é usado por padrão para todos os seus posts únicos.
Alguns temas também podem incluir modelos adicionais ou opções de layout que você pode usar.
É muito parecido com criar um modelo de página personalizado. A maioria dos temas do WordPress também vem com modelos de página que você pode usar ao editar uma postagem ou página no WordPress.

Dito isso, vamos dar uma olhada em como criar facilmente modelos personalizados de postagens únicas no WordPress. Mostraremos vários métodos, para que você possa usar aquele que funciona melhor para você.
- Criando modelos de postagens únicas usando o editor de blocos
- Criando modelos personalizados de postagens únicas usando o SeedProd
- Usando as configurações do tema para criar layouts de postagens únicas
- Criando manualmente modelos personalizados de postagens únicas com código
- Criando modelos personalizados de postagens únicas por categoria
- Criando modelos personalizados de postagens únicas para autores específicos
Criando modelos de postagens únicas usando o editor de blocos
Este método não cria realmente um modelo de postagem e é limitado em flexibilidade. No entanto, é a maneira mais fácil de salvar seus próprios layouts de postagens únicas e reutilizá-los.
O editor de blocos do WordPress padrão vem com um recurso integrado que permite salvar e reutilizar blocos. Um desses blocos reutilizáveis é o bloco de grupo.
O bloco de grupo permite que você coloque vários blocos e layouts de postagens inteiras em um grupo. Você pode então salvar este bloco de grupo e reutilizá-lo em suas outras postagens.
Vamos dar uma olhada em como usar o bloco de grupo para salvar seus modelos de postagem personalizados.
Primeiro, você precisa criar uma nova postagem no WordPress. Depois disso, basta adicionar um bloco de grupo à área de conteúdo.

Agora você pode começar a adicionar blocos ao bloco de grupo para criar um layout de postagem única para o seu blog WordPress.
Você pode adicionar quaisquer blocos que desejar, incluindo colunas, mídia e texto, imagens de capa e muito mais.

Assim que estiver satisfeito com o layout que você criou, você precisa mover o mouse para cima e selecionar o bloco de grupo.
Simplesmente clique no ícone do menu de três pontos e, em seguida, selecione a opção ‘Adicionar a blocos reutilizáveis’.

Em seguida, você precisa fornecer um nome para o bloco reutilizável e, em seguida, clicar no botão Salvar. O WordPress agora salvará seu bloco reutilizável, incluindo todos os blocos dentro do bloco de grupo.
Você pode então editar qualquer postagem existente em seu site ou criar uma nova. Na tela de edição de postagem, simplesmente clique no botão adicionar novo bloco e procure seu bloco salvo na aba ‘Reutilizáveis’.

Adicione o bloco à sua postagem, e o WordPress carregará todo o seu grupo de blocos com todos os blocos e configurações como você os salvou.
Este método permite que você salve seus layouts personalizados. No entanto, ele não permite que você altere como seu tema lida com postagens individuais.
Se você deseja maior flexibilidade, continue lendo a próxima etapa.
Criando Modelos Personalizados de Postagem Única Usando SeedProd
A maneira mais fácil de criar um modelo de postagem única personalizado é usando o SeedProd. É o melhor plugin construtor de sites WordPress e pode criar belos layouts de sites e modelos personalizados sem escrever nenhum código.
Você pode usar o construtor de arrastar e soltar do SeedProd para criar um tema WordPress totalmente personalizado, incluindo modelos de postagem única personalizados.
A primeira coisa que você precisa fazer é instalar e ativar o SeedProd plugin. Para mais detalhes, veja nosso guia passo a passo sobre como instalar um plugin WordPress.
Após a ativação, você precisa inserir sua chave de licença. Você pode encontrar essas informações em sua conta no site do SeedProd.

Depois disso, é hora de criar um tema WordPress personalizado. Isso é muito mais simples do que parece.
Criando um Tema WordPress Personalizado
Primeiro, você precisa ir para a página SeedProd » Theme Builder. Aqui, você usará um dos temas prontos do SeedProd como ponto de partida. Isso substituirá seu tema WordPress existente por um novo design personalizado.
Você pode fazer isso clicando no botão ‘Themes’.

Você verá uma lista de temas projetados profissionalmente para diferentes tipos de sites. Por exemplo, existem modelos chamados ‘Modern Business’, ‘Marketing Agency’ e ‘Mortgage Broker Theme’.
Dê uma olhada nas opções e selecione aquela que melhor atende às suas necessidades clicando no ícone de marca de seleção.

Depois de escolher um tema, o SeedProd gerará todos os modelos de tema que você precisa, incluindo um para páginas únicas e outro para posts únicos.
Cada modelo vem configurado com layouts atraentes e conteúdo de espaço reservado que é fácil de personalizar.

Para saber mais sobre como criar um tema com o SeedProd, consulte nosso guia sobre como criar facilmente um tema WordPress personalizado sem nenhum código.
Personalizando o Modelo Padrão de Post Único
O SeedProd facilita a personalização do modelo padrão de ‘Post Único’ usando um construtor de páginas de arrastar e soltar.
Simplesmente clique no link ‘Editar Design’ encontrado abaixo do modelo. Isso abrirá seu modelo de post no editor visual do SeedProd.

O editor visual do SeedProd tem um layout de 2 colunas. À esquerda, você encontrará blocos e seções que pode adicionar ao seu design.
À direita está uma prévia do modelo onde você pode ver suas alterações em tempo real.

Também é fácil personalizar o layout do seu modelo de post. Simplesmente clique em qualquer bloco para ver suas configurações na coluna esquerda.
Por exemplo, se você clicar no título do post, poderá ver suas configurações. Agora você pode alterar o alinhamento, o tamanho da fonte, o nível do cabeçalho e muito mais.

Clicar na aba Avançado permite alterar cores de fonte, espaçamento e outros estilos.
Você pode adicionar blocos adicionais arrastando-os da coluna esquerda para a coluna de prévia. O SeedProd usa tags de modelo para puxar conteúdo dinâmico como títulos de posts, imagens em destaque, comentários e muito mais. Isso permite que você adicione conteúdo ao modelo sem ter que editar cada post individualmente.
Por exemplo, você pode adicionar um bloco de Posts no final do conteúdo do seu post. Isso exibirá posts recentes que seus visitantes podem querer ler quando terminarem o post atual. Este bloco será mostrado automaticamente em todos os posts que usam este modelo.

Em seguida, você pode alterar as configurações do bloco de Posts para personalizar o conteúdo que é exibido.
Por exemplo, você pode exibir conteúdo de categorias específicas, usar um layout de duas colunas e alterar o número de posts exibidos.

Sinta-se à vontade para gastar tempo experimentando diferentes blocos e explorando suas configurações.
Após criar algo que você gostaria de usar como seu modelo de postagem, é hora de salvá-lo clicando no botão verde ‘Salvar’ no canto superior direito. Depois disso, você pode fechar o editor visual do SeedProd clicando no ícone de fechar ‘X’.

Você pode personalizar o restante do seu tema WordPress da mesma forma. Mas se precisar de um pouco de ajuda, consulte nosso guia passo a passo sobre como criar um tema WordPress personalizado com o SeedProd.
Quando estiver satisfeito com a aparência de tudo, certifique-se de que o interruptor ‘Ativar Tema SeedProd’ esteja ativado. Seu site WordPress agora usará seu tema SeedProd e o modelo de postagem única personalizado.

Usando Configurações de Tema para Criar Layouts de Postagem Única Personalizados
Muitos temas populares do WordPress vêm com configurações integradas para personalizar a aparência do seu modelo de postagem única.
Se o seu tema suportar essas configurações, você poderá encontrá-las na tela de edição de postagem. As opções disponíveis podem mudar dependendo do tema que você está usando.
Por exemplo, o tema Astra oferece opções de personalização ao editar uma postagem única. Usando essas opções, você pode alterar barras laterais, ocultar cabeçalhos, títulos, menus e muito mais.

Por outro lado, muitos dos principais temas do WordPress vêm com modelos prontos para uso que você pode utilizar.
Se o seu tema incluir modelos de postagem única, você os encontrará no painel ‘Modelo’ ou ‘Atributos da Postagem’ ao editar uma postagem.

Estes modelos são layouts completos que você pode usar sem nenhuma configuração necessária.
Criando Manualmente Modelos Personalizados de Postagem Única Com Código
Este método é um pouco avançado, pois exige que você edite arquivos do tema, copie e cole código e, opcionalmente, adicione CSS personalizado. Se você nunca fez isso antes, confira nosso tutorial sobre como copiar e colar código no WordPress.
Primeiro, você precisa abrir um editor de texto simples no seu computador, como o Bloco de Notas, e colar o seguinte código nele:
<?php
/*
* Template Name: Featured Article
* Template Post Type: post, page, product
*/
get_header(); ?>
Este código define um novo modelo chamado 'Artigo em Destaque' e o disponibiliza para os tipos de postagem de postagem, página e produto.
Você deve salvar este arquivo como wpb-single-post.php na sua área de trabalho. Em seguida, você precisa adicionar o modelo ao seu site WordPress. Para fazer isso, você precisa usar um cliente FTP para fazer o upload do arquivo para a pasta do seu tema atual.
Agora, você pode fazer login na sua área administrativa do WordPress e criar ou editar uma postagem. Role um pouco para baixo na tela de edição da postagem e você notará um novo painel 'Modelo' ou uma caixa de meta 'Atributos da Postagem' com uma opção para selecionar o modelo.

Você verá seu modelo personalizado 'Artigo em Destaque' listado lá.
No momento, seu modelo está essencialmente vazio, então selecioná-lo simplesmente exibirá uma tela branca.
Vamos consertar isso.
A maneira mais fácil de fazer isso é copiando o código do arquivo single.php do seu tema e usando-o como ponto de partida. Você terá que abrir o arquivo single.php e depois copiar tudo após a linha get_header().
Em seguida, você precisa colar este código no final do seu arquivo wpb-single-post.php. Agora você pode salvar este arquivo e enviá-lo de volta para o seu servidor.
No entanto, isso ficará exatamente igual ao seu modelo de postagem única atual. Agora você pode começar a fazer alterações no seu modelo de postagem única personalizado.
Você pode adicionar suas próprias classes de CSS personalizado, remover barras laterais, criar um modelo de largura total, ou qualquer outra coisa que desejar.
Criando Modelos de Postagem Única Personalizados por Categoria
Gostaria de usar um modelo personalizado de postagem única baseado em categorias? Por exemplo, você pode dar às postagens da categoria de viagens um layout diferente das postagens da categoria de fotografia.
Você pode fazer isso usando o SeedProd Theme Builder ou código.
Criando Modelos Personalizados de Postagem Única por Categoria Usando SeedProd
Anteriormente, cobrimos como personalizar o modelo de postagem única padrão do SeedProd Theme Builder. Mas não para por aí. Com o SeedProd, você pode adicionar quantos modelos de postagem personalizados desejar, como um layout diferente para cada categoria de postagem.
Para adicionar um novo modelo de postagem única, basta clicar no link 'Duplicar' abaixo do modelo de postagem original. Um novo modelo chamado 'Single Post – Copy' será criado e adicionado ao topo da página de modelos do tema.

Você pode personalizar o novo modelo da mesma forma que personalizou o modelo de Postagem Única padrão anteriormente. Simplesmente clique no link 'Editar Design' do modelo e faça as alterações que desejar usando o editor visual do SeedProd.
Quando terminar de personalizar o modelo, você precisará adicionar algumas condições para que o SeedProd saiba quais postagens devem usar este modelo. Neste caso, queremos que ele seja exibido ao visualizar postagens dentro de uma única categoria.

Você pode fazer isso clicando no link 'Editar Condições' do modelo e uma nova janela aparecerá.
Aqui, você pode dar um nome e prioridade ao modelo. O modelo de Postagem Única padrão tem uma prioridade de 0, portanto, certifique-se de dar a este modelo uma prioridade maior para que ele seja exibido nas categorias correspondentes.

Em 'Condições', selecione 'Tem Categoria' no segundo menu suspenso, em seguida, digite o nome da categoria no último campo. Por exemplo, se você quiser que apenas as postagens da categoria de fotografia usem este layout, digite 'fotografia'.
Quando terminar, clique no botão ‘Salvar’ e agora este modelo será usado para todas as postagens na categoria correspondente.
Esta é a maneira mais fácil de criar vários modelos de postagem personalizados no WordPress. Não requer nenhum conhecimento de código e não danificará acidentalmente nenhum arquivo do tema.
Criando Modelos Personalizados de Postagem Única por Categoria Usando Código
Este é outro método para aqueles que se sentem confortáveis em adicionar código aos arquivos do seu tema.
Primeiro, você precisa adicionar este código ao arquivo functions.php do seu tema ou a um plugin de snippets de código.
/*
* Define a constant path to our single template folder
*/
define(SINGLE_PATH, TEMPLATEPATH . '/single');
/**
* Filter the single_template with our custom function
*/
add_filter('single_template', 'my_single_template');
/**
* Single template function which will choose our template
*/
function my_single_template($single) {
global $wp_query, $post;
/**
* Checks for single template by category
* Check by category slug and ID
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
endforeach;
}
Este código primeiro verifica se o WordPress está solicitando uma postagem única. Se estiver, ele instrui o WordPress a procurar o modelo na pasta /single/ do seu tema WordPress.
Agora, você precisa adicionar os arquivos de modelo definidos por este código.
Conecte-se à sua hospedagem WordPress usando um cliente FTP ou Gerenciador de Arquivos no cPanel e vá para /wp-content/themes/sua-pasta-do-tema/.
Dentro da pasta do seu tema atual, você precisa criar uma nova pasta chamada 'single'. Em seguida, você precisa abrir esta pasta e criar um novo arquivo. Vá em frente e nomeie este arquivo single-cat-{slug-da-categoria}. Substitua {slug-da-categoria} pelo slug real da sua categoria.
Por exemplo, se você tem uma categoria chamada 'Notícias', então você criará o arquivo single-cat-news.php. Se você tem uma categoria chamada 'Dicas de Viagem', então crie um modelo single-cat-travel-tips.php, e assim por diante.

Agora, estes arquivos de modelo estarão totalmente vazios. Como ponto de partida, você pode copiar o conteúdo do seu arquivo single.php da pasta do seu tema e colá-los dentro de cada um desses modelos. Depois disso, você precisará editar esses modelos para fazer as alterações desejadas.
Quando terminar, você pode acessar seu site e visualizar uma postagem. Ela usará o modelo que você criou para a categoria onde esta postagem está arquivada.
Agora, vamos supor que você tenha uma postagem arquivada em duas categorias: Notícias e Dicas de Viagem. O WordPress mostrará automaticamente o modelo para 'Notícias' porque ele aparece primeiro em ordem alfabética.
Por outro lado, se você arquivou uma postagem em uma categoria e não criou um modelo para essa categoria, o WordPress voltará ao modelo padrão single.php do seu tema.
Criando Modelos Personalizados de Postagem Única para Autores Específicos
Vamos supor que você queira que as postagens escritas por um autor específico tenham uma aparência diferente em seu site. Você pode fazer isso usando código, seguindo a mesma técnica que mostramos para categorias.
Primeiro, você precisa adicionar este código ao arquivo functions.php do seu tema ou a um plugin de snippets de código.
/**
* Define a constant path to our single template folder
*/
define(SINGLE_PATH, TEMPLATEPATH . '/single');
/**
* Filter the single_template with our custom function
*/
add_filter('single_template', 'my_single_author_template');
/**
* Single template function which will choose our template
*/
function my_single_author_template($single) {
global $wp_query, $post;
/**
* Checks for single template by author
* Check by user nicename and ID
*/
$curauth = get_userdata($wp_query->post->post_author);
if(file_exists(SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php'))
return SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php';
elseif(file_exists(SINGLE_PATH . '/single-author-' . $curauth->ID . '.php'))
return SINGLE_PATH . '/single-author-' . $curauth->ID . '.php';
}
Em seguida, você deve se conectar ao seu site usando o gerenciador de arquivos FTP ou cPanel no cPanel e, em seguida, ir para /wp-content/themes/sua-pasta-de-tema/. Se você ainda não criou uma pasta chamada /single/ dentro dela, vá em frente e crie-a agora.
Dentro desta pasta, você precisa criar um modelo usando o nome de usuário do autor no nome do modelo. Por exemplo, single-author-johnsmith.php.
Este modelo estará vazio, então você pode copiar e colar o conteúdo do modelo single.php do seu tema e usá-lo como ponto de partida.
Agora você pode visitar seu site para ver uma postagem criada por um autor específico. Ela usará o modelo que você criou.
Esperamos que este artigo tenha ajudado você a aprender como criar modelos personalizados de postagens únicas no WordPress. Você também pode querer aprender como rastrear visitantes do site no seu site WordPress, ou ver nossa lista de plugins essenciais do WordPress para expandir seu site.
Se você gostou deste artigo, por favor, inscreva-se em nosso Canal do YouTube para tutoriais em vídeo do WordPress. Você também pode nos encontrar no Twitter e no Facebook.


Richard Watts
Não vejo uma opção "Adicionar a blocos reutilizáveis" no exemplo Criando Modelos de Postagens Únicas Usando o Editor de Blocos
Usando o tema ativo
WPBeginner Support
Depending on the specific block you may see the option to add it to patterns instead which is likely what you are running into
Admin
allah ditta
quero criar um modelo de postagem como o wpbeginner, é possível?
WPBeginner Support
Se houver parte do nosso design que você goste, você pode recriá-la em seu site.
Admin
Jasmine
Estou recebendo esta mensagem ao tentar usar o código:
Warning: call_user_func_array() espera que o parâmetro 1 seja um callback válido, função 'my_single_template' não encontrada ou nome de função inválido.
Alguma ideia do porquê?
WPBeginner Support
Você deve garantir que copiou todo o código corretamente, temos um guia que pode ajudar abaixo:
https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Admin
Iulian
Tudo bem, mas isso quebra o single.php padrão.
Em outras palavras, esta frase “Por outro lado, se você publicou um post em uma categoria e não criou um modelo para essa categoria, o WordPress voltará para o modelo padrão single.php do seu tema.” não está funcionando.
Alguma solução?
WPBeginner Support
Você pode precisar entrar em contato com o suporte do seu tema para garantir que não haja um modelo diferente com o qual você esteja lidando. Para entender o que queremos dizer, você pode dar uma olhada em nosso artigo abaixo:
https://www.wpbeginner.com/wp-themes/wordpress-template-hierarchy-explained/
Admin
Thomas
Olá, estou tentando seguir o passo:
Abra o arquivo single.php e depois copie tudo após a linha get_header().
Em:
Criando Manualmente Templates Personalizados de Postagem Única no WordPress
No entanto, eu não tenho nenhuma função "get_header()" nesse arquivo.
WPBeginner Support
Seu tema específico pode ter alguma codificação única, recomendamos entrar em contato com o suporte do seu tema específico e eles devem ser capazes de ajudar.
Admin
bob
Obrigado por isso. Todos os meus arquivos gerados automaticamente (autor, não encontrado etc.) estão usando o template do meu site e depois colocando uma seção branca com texto branco na página. também está começando no topo da página (então é texto branco sobre um fundo branco, em grande parte escondido atrás de um cabeçalho de página)
Acredito que seu artigo me ajudará a resolver essa bagunça.
Obrigado
WPBeginner Support
Our article should help and if you reach out to your theme’s support they may be able to assist as well
Admin
Jojo
Não consigo encontrar a opção de template no Beaver Builder.
WPBeginner Support
Os templates ainda devem ser encontrados na seção superior direita do painel de conteúdo
Admin
John
Estou correto em pensar que, uma vez que você cria um arquivo php de template de post personalizado, para que ele funcione como um template, você ainda precisa codificar o arquivo php, pois não há como salvar um novo post como um template. Isso está correto?
Obrigado pela sua ajuda.
WPBeginner Support
Isso está correto, para alterar o template, a menos que você esteja usando um construtor de páginas, não há um método para configurá-lo sem codificação.
Admin
Ali Jahani
Olá
wpbeginner é muitooooooooo bom
obrigado por publicar o melhor artigo
WPBeginner Support
Glad you like our content
Admin
Gregory
Este é um tutorial incrível sobre a página de postagem personalizada do WP.
Obrigado pela sua ajuda.
WPBeginner Support
You’re welcome, glad you found our tutorial helpful
Admin
Haripal Reddy
Olá Autor,
Segui os passos como você mencionou. Tenho álbuns CPT. Copiei o código de single-albums.php para outro arquivo wpb-single-albums.php e adicionei código de template como /*
* Template Name: custom template
* Template Post Type: albums
*/
e fiz algumas alterações necessárias. Mas depois de selecionar este template na edição do post, ele exibe a página padrão (single-albums.php).
Como posso consertar isso, por favor, ajude
WPBeginner Support
Você pode querer verificar o template de trabalho atual para garantir que o tipo de postagem esteja correto
Admin
Alice
Obrigado pelo seu ótimo post. Tenho 2 perguntas: os templates de post único são os mesmos que os templates de tipo de post personalizado? Se forem diferentes, você pode me mostrar como criar um template de tipo de post personalizado?
WPBeginner Support
Eles podem ser diferentes se você quiser, mas se você criar um especificamente para o tipo de postagem, caso contrário, o WordPress usará o template de postagem padrão. Você deve dar uma olhada em nosso artigo aqui: https://www.wpbeginner.com/wp-themes/wordpress-template-hierarchy-explained/
Admin
aziz
olá
obrigado pela postagem
Fiz tudo e funcionou como eu queria.
mas tive um pequeno problema
após adicionar o código ao function.php, single.php parou de mostrar dados
há algo que eu possa fazer?
WPBeginner Support
You would need to create the folder as we explain after the code in the article
Admin
Binesh
Olá, Obrigado pelo seu Tutorial…
Conforme seu tutorial, criei um tipo de post personalizado. Mas agora estou enfrentando um problema com comentários. Ao enviar o comentário, ele redireciona para a pesquisa...
Por favor, sugira uma solução para isso..
Obrigado desde já
WPBeginner Support
Se estiver redirecionando para uma página 404, você deve dar uma olhada em nosso artigo de solução de problemas aqui: https://www.wpbeginner.com/wp-tutorials/how-to-fix-wordpress-posts-returning-404-error/
Admin
Mike
Olá.
I’m using this & enjoying it greatly!
However, I’m finding the following warning in my error logs around this code:
[warn] mod_fcgid: stderr: PHP Warning: Use of undefined constant SINGLE_PATH – assumed ‘SINGLE_PATH’ (this will throw an Error in a future version of PHP)
Alguma ideia de como corrigir isso?
Seu trecho começa com “define(SINGLE_PATH,…” então não tenho certeza do que mais fazer aqui.
WPBeginner Support
That error is saying it wants SINGLE_PATH to be surrounded by single quotes (”) which you can do for that warning
Admin
Jojo
Então, segui seus passos e está funcionando para a nova página de slug de categoria única, mas não para o single.php padrão.
Como posso fazer isso funcionar? Talvez o caminho padrão do single.php esteja errado?
Obrigado!
WPBeginner Support
Se você quisesse editar o arquivo single.php padrão, primeiro você precisaria criar um tema filho: https://www.wpbeginner.com/wp-themes/how-to-create-a-wordpress-child-theme-video/
e então você poderia editar seu arquivo single.php sem se preocupar que as alterações sejam removidas quando você criar seu próprio single.php.
Admin
Jagdish
Sou um dos seus leitores silenciosos, amo muito seu blog <3
WPBeginner Support
Thank you, glad you’ve been enjoying our content
Admin
Hil
Olá,
Estou pensando demais nisso, mas... se eu quiser que cada postagem do blog tenha a mesma aparência, eu apenas crio o Layout (uso o tema Divi), uso o primeiro método acima (faço uma nova versão do single.php com o nome correto) e escolho isso toda vez que quero criar uma postagem? É tão simples assim?
Além disso, para adicionar o CSS personalizado, você o adiciona ao arquivo php e como? Onde dentro dele você o adiciona? Como deve parecer? Essa é a parte sobre a qual ainda não encontrei nenhuma referência sobre como fazer. Você pode dar um exemplo baseado apenas em fazer com que cada postagem do blog tenha uma aparência única?
Obrigado
WPBeginner Support
As postagens do blog devem usar o single.php por padrão e ter a mesma aparência dessa forma, mas você pode criar um modelo de postagem personalizado se quiser modificar a aparência. Para CSS personalizado, você deve dar uma olhada em nosso artigo aqui: https://www.wpbeginner.com/plugins/how-to-easily-add-custom-css-to-your-wordpress-site/
Admin
Malgorzata
Olá, obrigado pelos ótimos tutoriais. Está funcionando incrivelmente, mas não para novas categorias, que não têm um modelo especial. Infelizmente, ele não está pegando o código do arquivo single.php padrão. Agradeceria alguma ajuda sobre como fazer isso funcionar.
Christopher Krohn
Tutorial fantástico. Obrigado!
STEVE
Olá, obrigado pelo tutorial!
Tenho uma pergunta. Como aplicaríamos CSS personalizado que afetaria apenas as páginas de Posts?
Obrigado
TRAVIS
E se você quiser tornar seu novo modelo o padrão para tudo. De modo que sempre que um post for criado, ele seja automaticamente selecionado como o modelo padrão?
Jarrod
Basta colocar o código para o modelo que você deseja criar em single.php.
Jae
Aposto que existem plugins que você pode usar para fazer o trabalho sem o incômodo de codificação e temas filhos. Teria sido ótimo se você tivesse pesquisado e compartilhado isso neste post também.
Mahbub
@JAY por que você não fez isso sozinho?
peyman
Eu uso seu método, mas não consigo definir CSS personalizado para essas postagens.
por exemplo, em function.php, quando verifico is_page_template(‘single-cat-news’), a instrução não retorna verdadeiro e meu CSS personalizado para esse tipo de postagem não está funcionando. o que devo fazer neste caso?
Bikram
Verdade.
Eu também estou tendo esse problema. O template de largura total funciona bem para posts e páginas, mas quando se trata de tipos de postagem personalizados, os códigos CSS não funcionam e voltam ao tamanho normal da página sem barra lateral.
Estou tendo dificuldades para encontrar uma solução para esse problema.
Mike
Preciso de alguma ajuda adicional com isso...
Seguindo as instruções desta página (juntamente com as pequenas modificações observadas em meus comentários em 12/2/17 e 12/12/17), consegui fazer isso funcionar de forma confiável.
NO ENTANTO, encontrei o problema onde usar este método para chamar um modelo personalizado não parece ser registrado com a chamada das classes body_class.
Por exemplo, se eu definir um modelo personalizado em uma página (onde estou usando o menu suspenso "Modelo" do WordPress dentro da visualização de edição da barra lateral "Atributos da Página" – então as classes do corpo que são geradas incluiriam o nome desse modelo.
Como:
<body class="page-template-my_custom_template page page-id-2..."Mas, usando este método, as classes do corpo apenas retornam:
<body class="page-template-default page page-id-2..."Alguma ideia de como garantir que as classes do corpo reflitam um modelo de postagem única personalizado?
Mike
Aqui está a resposta (para o meu tema, pelo menos – sua experiência pode variar).
Adicionar o seguinte a [b]functions.php[/b] resolveu o problema para mim:
add_filter('body_class','add_category_to_single'); function add_category_to_single($classes) { if (is_single() ) { global $post; foreach((get_the_category($post->ID)) as $category) { // add category slug to the $classes array, starting with 'category-'... $classes[] = "category-$category->category_nicename"; } } // return the $classes array return $classes; }Dzungx Corn
Criei um arquivo single-cat-news.php para “Notícias”. Minha categoria “Notícias” tem duas subcategorias: “Câmera” e “Smartphone”. A postagem em “Smartphone” é exibida em single-cat-news.php (S depois de N no alfabeto), mas a postagem em “Câmera” é exibida no single.php padrão (C antes de N no alfabeto). Quero que a postagem em “Câmera” seja exibida em single-cat-news.php, o que devo fazer? Selecionei tanto “Notícias” quanto “Câmera” para minha postagem.
Sarmad Gardezi
Im viewing your Blog from last 2 years. I explored whole web to find this but i got the correct working code from here i just love your Blog keep it up
Mike
Ao usar essa abordagem para especificar um modelo de postagem personalizado para uma postagem única dentro de uma categoria específica, descobri que o WordPress NÃO estava voltando para single.php em instâncias onde um arquivo single-cat-WHATEVER.php não existia para uma categoria específica.
Corrigi isso adicionando a seguinte linha antes do final da função:
elsereturn SINGLE_PATH . '/single.php';
Assim, este código:
/**
* Verifica o template single por categoria
* Verifica por slug e ID da categoria
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
endforeach;
}
Tornou-se isto:
/**
* Verifica o template single por categoria
* Verifica por slug e ID da categoria
*/
foreach((array)get_the_category() as $cat) :
if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php';
elseif(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php'))
return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php';
else
return SINGLE_PATH . '/single.php';
endforeach;
}
Isso parece ser a abordagem correta? Ou há algo mais que eu possa ter feito para quebrar a funcionalidade padrão?
Mike
Obrigado por este 'como fazer' claro.
Uma observação: para aqueles de nós que usam um TEMA FILHO, descobri que mudar...
define(SINGLE_PATH, TEMPLATEPATH . ‘/single’);
para:
define(SINGLE_PATH, get_stylesheet_directory() . ‘/single’);
(dentro da seção 'Definir um caminho constante para nossa pasta de modelos únicos') garante que o diretório do tema filho seja verificado em busca de modelos únicos em vez do diretório do tema pai.
Esta pode ser também a razão pela qual não está funcionando para alguns dos outros comentaristas acima.
Boa sorte a todos!
Stephanie Lewis
Muito obrigado pela sua ajuda! Eu estava me perguntando por que ele continuava me direcionando de volta para o tema pai em vez do tema filho.
Ashley
Não consigo fazer isso funcionar para mim, o modelo nunca aparece no editor de postagens, mesmo depois de limpar meu cache.
Olayinka
Obrigado por este artigo.
Quero saber como posso personalizar ainda mais o layout deste modelo de postagem personalizada individual, como colocar uma imagem na postagem antes do conteúdo e no rodapé.
oussama
Olá,
Preciso mudar a ordem de 3 coisas na página do post, que ficam no final do artigo:
1- um plugin de paginação.
2- um anúncio.
3- ícones de compartilhamento social.
Quero colocá-los na seguinte ordem (verticalmente):
1- o anúncio
2- os ícones de compartilhamento social
3- o plugin de paginação
Como posso fazer isso, por favor?
Linda Holiner
Obrigado pelos seus ótimos tutoriais. Estou tendo problemas com este. Adicionei o código ao meu functions.php, mas não estou obtendo o template de post único. Preciso fazer uma chamada para a função ou o WordPress faz isso? Existe alguma maneira de depurar a função?
Eu só quero que posts de uma categoria específica sejam exibidos de forma diferente quando você clica neles.
Taufiq Mahmud
Eu queria criar uma página de post personalizada onde usuários registrados do meu site pudessem postar sem usar o post padrão do WordPress.
Pierrick
Olá! Obrigado por este tutorial, mas sou bem iniciante em web design e comecei a criar um tema completo para WordPress. Tudo funciona bem no meu site, mas estou tentando possibilitar a adição de páginas que utilizem um template que criei (como a página de um produto em um catálogo), mas não tenho ideia de como fazer isso. Tentei primeiro criar um template de página onde coloquei loops que exibem o conteúdo de um post ou página, como título, texto e valores de alguns campos personalizados. Para isso, usei `query_posts`, mas ele exige que o ID do post ou página seja colocado com "page_id=" ou "p=", o que significa que o template é para uma página específica, e eu teria que criar um template para cada nova página que adicionasse a este catálogo, especificando manualmente o ID da página/post nele, quando o que eu queria era criar um único template para todas as páginas do catálogo...
Então, enquanto pesquisava para encontrar uma solução, encontrei seu artigo e tentei criar um post usando o novo template de post único, mas não importa qual template eu selecione na lista, quando vou para a URL do post, ele exibe minha página inicial... Provavelmente estou fazendo tudo errado e nem tenho certeza se entendi o que é um post único e se é realmente o que preciso... Agradeceria muito se você pudesse me dar algumas dicas sobre o que devo fazer para resolver meu problema, ou se existe algum tutorial em algum lugar que possa me ajudar...
Obrigado,
Pierrick.
WPBeginner Support
Olá Pierrick,
Não temos certeza se entendemos completamente seu problema. No entanto, se você apenas deseja criar um modelo para ser usado por qualquer página, o modelo de página personalizado é a abordagem correta. Como você quer que os usuários possam ver qualquer página, isso significa que você não precisa usar query_posts, seu loop começará com o padrão
1-click Use in WordPress
Admin
alex
Olá,
Tenho uma configuração local com WP 3.7.x e o Tipo de Post do Modelo: post, page, product não está disponível.
Como posso criar arquivos php de categoria separados para cada categoria de post???
single-{slug}.php
category-{slug}.php
tudo não parece funcionar
Alguma dica?
Mark
Configurei isso para funcionar com categorias, no entanto, quando seleciono uma postagem que não tem categoria, ela falha em usar o modelo padrão e não exibe a postagem. Suspeito que meu tema possa ser o culpado. Como eu codificaria o single.php no diretório pai como padrão a ser usado se nenhum modelo de categoria existir?
Funciona perfeitamente se eu copiar o single.php para o arquivo /single/single-cat-name.php, mas não quero 40+ arquivos duplicados.
Eric Besso
primeiro copie single.php para a pasta /single
então inclua este código logo antes do endforeach;
senão
return SINGLE_PATH . ‘/single.php’;
Garikai Dzoma
Isso tem sido de grande ajuda para mim.
Lyssie
Isso é exatamente o que eu estava procurando, obrigado por explicar isso de forma tão simples! No entanto, tenho uma dúvida: removi minha barra lateral, mas agora há apenas um espaço vazio onde ela costumava ficar. Como posso esticar a seção de conteúdo principal para cobrir todo o espaço? Obrigado novamente!
WPBeginner Support
Olá Lyssie,
Isso ocorre porque seu tema definiu a largura da área de conteúdo em relação à barra lateral. Você precisa usar a ferramenta de inspeção para descobrir qual classe CSS sua área de conteúdo usa e, em seguida, ajustar adicionando CSS personalizado para torná-la de largura total.
.page-template-full-width .content-area { width: 100%; margin: 0px; border: 0px; padding: 0px; } .page-template-full-width .site { margin:0px; }1-click Use in WordPress
Por favor, veja nosso guia sobre como criar página de largura total no wordpress
Admin
Lyssie
Obrigado pela resposta rápida! Isso foi muito útil! Agora, se eu vir:
div id=”primary” class=”content-area”>
quando uso a ferramenta de inspeção, qual é a classe que minha área de conteúdo usa?
Lyssie
Oops, isso não saiu como esperado.
div id=”primary” class=”content-area”
main id=”main” class=”site-main” role=”main”
article id=”post-4773″ class=”post-4773 post type-post status-draft format-standard hentry category-travel-2″
div id=”featured-image”
/div
WPBeginner Support
Olá Lyssie,
Seu tema usa a classe content-area para definir a largura do bloco de conteúdo. Você deve conseguir ver sua largura ao usar a ferramenta de inspeção.
Joe Yee
Este é um ótimo artigo e deve ajudar uma pessoa sem conhecimentos de codificação como eu. A personalização de um modelo seria algo assustador que poderia quebrar o tema completamente. Você recomenda fazer o modelo personalizado em um tema filho ou está tudo bem em fazê-lo diretamente no tema. Muito obrigado.
WPBeginner Support
Olá Joe,
Você não alterará nenhum dos arquivos existentes do seu tema. Em vez disso, você criará um novo arquivo. Se algo der errado, você pode simplesmente excluir o modelo e seu site voltará ao normal.
Sim, criar um tema filho é a melhor prática recomendada.
Admin
Danielle
Quando coloco o arquivo no meu tema filho, ele aparece na caixa suspensa, mas na verdade não é aplicado.