Hoje vamos continuar com a parte 5 da série de posts onde mostro o passo-a-passo da criação de um tema pra WordPress.
Se você ainda não está acompanhando, veja as outras partes dessa sequência de artigos:
- Parte 1 – Estrutura inicial do tema
- Parte 2 – HTML5, Funções básicas do WordPress, Feed RSS e Atom
- Parte 3 – Topo e listagem de posts
- Parte 4 – Header, Footer e Sidebar
Página interna do post (single.php)
Eu não sei exatamente por que chamo esse tipo de página de “interna do post” ou “interna da notícia”, mas essa é a página que mostra todo o conteúdo do post em questão.
Segundo a hierarquia de templates do WordPress, ele irá mostrar o template criado nos seguintes arquivos (sempre o primeiro que ele achar):
- single-{post_type}.php – Se o post que está sendo acessado é do post-type “produto“, o WP iria procurar por um single-produto.php
- single.php
- index.php
Então, como nós queremos criar uma single para os posts normais, vamos criar o single.php, já que o index.php está sendo usado pela home do blog.
Podemos começar o single.php copiando todo o index.php, que ele já vai funcionar:
Porém, se for pra deixar ele exatamente igual ao index.php não precisaríamos criar o single.php, é só deixar que o WordPress use o index.php (ultima opção na hierarquia de templates).
Então vamos fazer algumas mudanças..
Listando as categorias e tags de um post
Vamos criar um rodapé no post, dentro dele vamos mostrar a lista das categorias e tags (separadas por vírgulas):
Usamos agora duas novas funções:
- the_category( separador, parent, post_id ) – Lista as categorias de um post
- the_tags( antes, separador, depois ) – Lista as tags de um post
Tirando a diferença nos parâmetros, ambas funções funcionam de forma bem parecida.
Exibindo o thumbnail principal de um post
Podemos também editar o cabeçalho do post e exibir seu thumbnail com a função the_post_thumbnail( tamanho, atributos ), assim:
Percebam que não usei nenhum dos parâmetros da função, pois quero justamente o tamanho padrão (configurado por dentro do painel de controle) e manter os atributos (alt, title) originais.
Mas agora tem uma pegadinha! Você precisa habilitar os thumbnails (no seu tema) caso queira que seus posts e páginas possam ter uma imagem destacada, no caso o thumbnail que estamos exibindo ali em cima.
Habilitando thumbnails em um tema
Para habilitar os thumbnails é só criar na raiz do seu tema (ou editar se ele já existir) o arquivo functions.php, que é – basicamente – o arquivo central do seu tema, onde você define todo tipo de configuração ligada ao tema:
Usamos a função add_theme_support( feature ) que serve pra habilitar uma feature no seu tema, as features que podem ser habilitadas são:
- post-formats – Formatos diferentes de post, vide: http://codex.wordpress.org/Post_Formats
- post-thumbnails – Thumbnails (imagens destacadas) para posts e páginas
- custom-background – Background customizável (imagem/cor) através do admin
- custom-header – Header customizável (imagem, logo, texto) através do admin
- automatic-feed-links – Links para feeds RSS e ATOM gerados automaticamente no wp_head(), que eu não gosto de usar por alguns motivos
Finalizando
Agora nosso template já tem a estrutura básica (e recomendada) de um template pro WordPress, incluindo a listagem e a página interna do post.
Aceito sugestões sobre o que abordar na próxima parte!
Acompanhe o template que estou criando pro meu blog, com mais algumas coisinhas (que não coloquei aqui), no GitHub: https://github.com/TiuTalk/blog.thiagobelem.net
Gostou? Então comenta, compartilha e recomenda! ![]()
Abraços e até a próxima!
Muito legal os posts tomara que continue
Opa! Muito obrigado!
Parabéns Thiago, o posts são muito bem explicados e sem dúvidas está ajudando a muita gente assim como a mim.
Eaew, muito legal os tutoriais.
Gostaria de sugerir para a próxima parte, explicar como criar páginas independentes do blog.
Por exemplo, eu tenho uma página principal “index.php” que exibe algumas informações do meu site / blog,
E eu tenho um menu que redireciona para a página de blog / contato
Também gostaria que fossem feitos exemplos de taxonomias
Ainda bem que você continuou estes post, muito bom, parabens.
Este post e old mais e very gold. vlw amigão
Thiago, você ainda vai continuar com os posts, são muito bons e daria uma ajuda muito grande para a galera, parabén.
Parabéns pelos posts e pela disposição em ensinar!
Como já comentaram aqui, acho que seria muito interessante falar um pouco sobre menus.
Abraço
obs: também seria legal se você falasse bons livros completos na sua opinião sobre WP =)
Olá Thiago, tranquilo?
Tem alguma previsão sobre quando será publicada a parte 6?
Obrigado!
Cara muito obrigado pelos tutoriais! Você é incrível. Comecei a pouco tempo com o WordPress e estou gostando muito.
Seria interessante mostrar como criar um slid de destaques com os últimos posts!
Descobri o seu blog até meio por acaso.
Não tem muito tempo que lido com o WordPress, só uns seis meses quando resolvi lançar o meu blog, e ainda não desenvolvi nenhum tema, apenas modifiquei um já existente exatamente para o blog, porém venho pensando em começar a desenvolver meus próprios temas para WordPress e procurando tutoriais acabei caindo aqui, de para-quedas.
Gostei muito desse tutorial, vou estudar com bastante calma para ter uma base para começar desenvolver meus próprios temas.
Abraços
Cara, sou seu fã, já aprendi e reaprendi muita coisas aqui em em seu blog, e estes dias um amigo veio e me disse, se eu entendesse 50% do que você entende de PHP, eu estaria criando vários templares WP e estaria rico, então fui pesquisar, e vim direto aqui quando vi que era seu blog, e estou aprendendo, muito bem explicado, parabéns mais uma vez e estou esperando a próxima.
Abraços
Essa cara, literalmente é o cara! Simplesmente obrigado!
Gostaria de saber como fazer para colocar menu.
Muito bom cara, parabéns.
Cada módulo passado aqui tem me ajudado cada vez mais.
Abração
Cara esse material ficou muito bom para aprender, quando vai ter mais um desses tutorial de WordPress.
E ai thiago, muito boa a sequencia de posts sobre o WordPress, estou começando a trabalhar com ele, um assunto que acho que seria interessante seria sobre personalizar e criar menus pro blog/site, ensinando algumas coisas sobre como personaliza-lo no css e etc com as classes que o WordPress cria pra gente e etc.
No mais, queria deixar meus parabens pelo blog, tem ajudado a muitos, valeu^^
Fala Thiago, outro ótimo post seu parabéns.
Primeiro gostaria de saber o motivo de não gostar de usar o “automatic-feed-links” nos temas e uma sugestão para o próximo tópico seria a falar de integração com redes sociais e também como usar o sistema de comentários do facebook de forma prática e sem dores de cabeça…
Esperando pelos próximos posts e mais uma vez parabéns…
Evandro,
Resumindo bastante, pra usar o automatic-feed-links eu teria que usar o wp_head(), o que acaba gerando muito HTML que eu considero dispensável. Porém alguns plugins precisam do wp_head() pra funcionar, mas como eu crio o tema sem pensar/depender dos plugins, acabo não usando ele e incluindo “na mão” a chamada pro RSS.
Massa! Sera legal se você fosse vendo funcionalidades diferentes em cada template e fosse colocando como faze-las, talvez nesse mesmo tutorial, ou em um com outro nome, tipo “O que mais se pode fazer em um layout do wordpress”. Ficaria muito bom = )
Pingback: Criando um tema para WordPress – Parte 4 - Thiago Belem / Blog