Dicas | Paulo Anderson | 19 de setembro de 2016
Conheça o loop do WordPress
Sem a menor sombra de dúvidas, o loop é o principal código dessa lista. O Loop é usado para o wordpress mostrar os posts que você escreveu e estão armazenados no banco de dados.
Os temas, em sua maioria, tem o loop assim:
1 2 3 4 5 |
<!--COMEÇA ASSIM--> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <!--TERMINA ASSIM--> <?php endwhile; ?> |
Funções Básicas
Conheça os códigos básicos para montar elementos iniciais no template. É praticamente impossível não usá-los! Abaixo alguns:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php the_author(); ?> – Este código tem a função de exibir o nome do autor do post. <?php the_date('d / m / Y'); ?> - Mostra a data em que o Post foi publicado <?php the_time('g:i a'); ? > - Mostra a hora em que o Post foi publicado. <?php the_author_email(); ?> - Exibe o e-mail do autor que publicou o post. <?php the_title(); ?> - Responsável por exibir o título do post <?php the_permalink(); ?>- Exibe o link do Post (permalink) <?php get_calendar(); ?>-Exibe o calendário do seu Blog |
Todos eles devem ser usado dentro do Loop.
Usando a criatividade podemos montar os códigos da seguinte maneira:
1 2 |
Publicado por <a href="mailto:<?php the_author_email (); ?>"> <?php the_author(); ?> </a> em <? php the_date('d / m / Y'); ?> às <?php the_time ('g:i a'); ?>. |
vai ser exibido assim:
Publicado por Paulo, em 06 / 03 / 2018 ás 2:47 pm
Perceberam que onde esta “Paulo” é exibido um link de e-mail para autor que publicou o post. Isso aconteceu graças a função de e-mail (mostrada acima) eu apenas inseri o código
1 |
<a href="mailto:<?php the_author_email(); ? >"> <?php the_author(); ?></a> |
sendo que o href tem a função no HTML de fazer links, assim seria exibido o e- mail do autor no lugar do código
<?php the_author_email(); ? >
, fazendo portanto um link de e-mail automático para cada autor.
Outro truque parecido é fazer o título do post em Link, o processo é quase o mesmo, só mudando os códigos necessários:
1 |
<a href="<?php the_permalink(); ?>" ><?php the_title(); ?></a> |
Vai ser exibido assim:
Conteúdo dos posts
Outro código importante e sem dúvida é indispensável é o uso do código
1 |
<?php the_content(''); ?> |
, é com ele que é possível a exibição do conteúdo do post e também da personalização da tag <!–more–> que é usada para fazer “resumos” dos posts. Pode ser encontrado nos arquivos index.php , single.php, search.php, etc. Você pode substituir o código do seu template por estes para ver como funciona.
– Mostra o conteúdo do posts por completo (se o mesmo não tiver a tag more dentre seus códigos) e também não exibe o link de “leia mais..”
1 |
<?php the_content(''); ?> |
Mesma função acima, só que quando o post usa a tag <!– more–> é exibido o link “leia mais…”.
1 |
<?php the_content('Leia mais…'); ?> |
– Também a mesma função das outras, só que mostra: ” Continue lendo…TITULO DO POST”, ou seja, mostra o titulo do posts onde é colocado a tag <!–more–>
1 |
<?php the_content('Continue lendo… ' . the_title('', '', false)); ?> |
Abaixo um exemplo de um post que usa tags <!–more–>.
A tag <?php the_content(''); ?>
– também pode ser subistituída por outra,chamada de <?php the_excerpt(); ?>
*, é geralmente usada no arquivo search.php para facilitar os resultados das buscas. Ela gera automáticamente um resumo do código, sem necessidade de você inserir tags como <!– more–>.
Posts em lista e Query Posts
Eis um código que é indispensável para quem quer fazer do wordpress, um sistema CMS para gerenciar todo o conteúdo do site. Abaixo eu vou mostrar como fazer de uma maneira super simples uma lista dos posts, determinando qual categoria será exibida e muito mais! Segue o código básico que deve ser inserido entre o loop:
1 2 3 4 5 |
<ul> <li><span><?php the_time ('d-m-y') ?></span> <a href="<?php the_permalink() ?>"><?php the_title(); ?></a> </li> </ul> |
Vai ficar assim no seu XHTML:
1 2 3 4 5 6 7 8 9 |
<?php while (have_posts()) : the_post(); ?> <ul> <li><span><?php the_time('d-m- y'); ?></span><a href="<?php the_permalink (); ?>"> <?php the_title(); ?></a> </li> </ul> <?php endwhile; ?> |
É simples,basicamente a tag <?php the_permalink(); ?> faz o link. Não tem segredo.
Agora se você quer exibir listas de posts de uma determinada categoria, é mais fácil ainda usando Query Posts. É só colocar em cima do Loop o código correspondente, assim:
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php query_posts ('posts_per_page=6&cat=5'); ?> <?php while (have_posts()) : the_post(); // start your Loop ?> <ul> <li> <span><?php the_time('d-m- y'); ?></span> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> </li> </ul> <?php endwhile; ?> |
Vamos analizar o código para você entender:
1 |
<?php query_posts ('posts_per_page=6&cat=5'); ?> |
&cat=5 – Determina qual categoria será exibida, onde “5” é a ID da categoria (Para saber a ID, é só ir no Painel de controle do wordpress-> Gerenciar-> Categorias).
Resultado:
1 2 3 4 5 |
09-03-07 Março sem atualizações de segurança… 26-02-07 Pig E Bank: porquinho eletrônico? 25-02-07 Curtas II: Gmail, Firefox, Ultimate e Shutdownday |
Você pode ter quantas listas quiser, desde que faça um loop para cada uma.
Comentários
Agora alguns códigos para personalização dos comentários do seu site. Primeiro abra o arquivo comments.php( fica na pasta do tema), é nele que se encontra todos os códigos que nós vamos estudar.
– Mostra o texto, o conteúdo, de cada comentário
1 |
<?php comment_text() ?> |
– Mostra a data exata que o comentário foi enviado
1 |
<?php comment_date() ?> |
– Mostra a Hora que o comentário foi enviado.
1 |
<?php comment_time('H:i:s'); ?>– Mostra o nome do autor do comentário, junto com um link para o site dele. |
– Mostra o nome do autor do comentário, junto com um link para o site dele.
1 |
<?php comment_author_link() ?> |
– Mostra o nome do autor do comentário.
1 |
<?php comment_author(); ?> |
– Mostra o número de comentário do post, podendo ser personalizável.
1 |
<?php comments_number(__('0 '), __('1 comentário'), __('% comentários')); ?> |
– mostra uma mensagem, que é exibida quando o usuário envia um comentário dizendo que o comentário precisa ser aprovado.
1 2 |
<?php if ($comment->comment_approved == '0') : ?> <p><em> Seu comentário precisa ser aprovado</em></p> <?php endif; ?> |
Categorias
Alguns códigos ótimos para personalizar as categorias do seu wordpress. Abra o arquivo category.php que é o arquivo do template das categorias do blog.
– Exibe o título da categoria
1 |
<?php echo single_cat_title(); ?> |
– Exibe a descrição dela ( primeiro deve-se criar a descrição no painel de controle )
1 |
<?php echo category_description(); ?> |
– Mostra em forma de lista todas as categorias do site
1 |
<?php wplistcats(); ?> |
– Mostra qual ou quais categorias o Post foi publicado (ideal em ser usado no single.php)
1 |
<?php the_category(' / '); ?> |
Blog Info (informações do blog)
Têm a função de exibir informações sobre seu Blog, são varias tags, todas fáceis…Eu pessoalmente uso no header.php para montar as tags <head>. Abaixo estão as básicas, logo depois ensinarei como montar algumas tags no header.php.
– Exibe o título do seu Blog
1 |
<?php bloginfo('name'); ?> |
– Mostra o Charset que seu Blog usa
1 |
<?php bloginfo('charset'); ?> |
– Mostra a descrição do seu Blog
1 |
<?php bloginfo ('description'); ?> |
– Exibe a URL do RSS do seu Blog
1 |
<?php bloginfo('rss2_url'); ?> |
– Mostra o pingback
1 |
<?php bloginfo ('pingback_url'); ?> |
– Exibe a URL da folha CSS do atual tema
1 |
<?php bloginfo ('stylesheet_url'); ?> |
Usando os códigos acima da para montar no header.php, entre as tags<head> e </head> os seguintes efeitos:
1 2 3 4 5 6 7 |
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" / > <link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" / > <link rel="pingback" href="<?php bloginfo(’pingback_url’); ?> " /> <style type="text/css" media="screen">@import url( <?php bloginfo ('stylesheet_url'); ?> );</style> |
Coloque os códigos acima no seu header e você terá os efeitos desejados.
Include Tags
Ótimo quebra-galho se você não quer usar a função include para chamar os arquivos do seu tema. Funciona como template. Veja abaixo o que elas podem fazer:
1 2 3 4 5 6 7 |
<?php get_header(); ?> – Inclui na página o arquivo header.php, puxando o mesmo. <?php get_footer(); ?> – "Puxa" o rodapé da sua página, chamando o arquivo footer.php <?php get_sidebar(); ?> – "Puxa" a sidebar <?php comments_template(); ?> – Inclui o arquivo coments.php do seu atual tema. Deve ser usado no single.php pois este código faz aparecer os comentários da sua página. |
Usando os códigos acima, podemos fazer páginas customizadas como as ” erro 404“.
Escreva o seguinte código:
1 |
<?php get_header(); ?> <h2>Página não encontrada!</h2> <?php get_sidebar(); ?> <?php get_footer(); ?> |
Salve como 404.php no diretório do tema que você usa. Justamente a linha acima vai fazer aparecer uma página onde tem a sidebar, o rodapé, e também as tags <head> e </head>, depois é só acessar qualquer posts inexistente e você verá esta página, lembrando que talvez você terá alinhar algumas partes com CSS.
Boas práticas!
"Se você faz o que sempre fez,
você obterá o que você sempre obteve".
- Anthony Robbins
Tenho 31 anos, sou empreendedor e desenvolvedor Web focado em WordPress há mais de 9 anos.
Cristão, Filho, Marido, Pai.
Fundador da CRIEI DESENVOLVIMENTO DE SITES