Todo o conteúdo de um blog que é gerenciável pelo WordPress possui registrado no sistema as datas nas quais foi submetido a alterações; seja ao publicar ou editar o material, por exemplo. Essa referência de tempo além de customizável pode ser muito aproveitada em uma exibição diferenciada em tela ou até mesmo como filtro de buscas para os usuários, conforme veremos a seguir.
AGENDAR POSTAGEM
Ao publicar um artigo, os usuários possuem a capacidade de escolher a data na qual esse material será veiculado. Por padrão o momento da publicação é sempre o atual, mas isso pode ser alterado tanto para o passado quanto o futuro.
Localize a aba publicar enquanto edita seu artigo, modifique a data clicando em ‘Editar’ e opte por uma data futura a atual clicando em ‘Ok’. Nesse momento você perceberá que o botão ‘Publicar’ alterou seu rótulo para ‘Agendar’. Clicando sobre ele o material em questão apenas será publicado quando a data escolhida chegar.
PESQUISAR POR DATA ESPECÍFICA
Em uma pesquisa avançada é possível consultar a ocorrência de publicações para uma data exata. Utilize a função abaixo para retornar resultados do dia 03 de Maio de 2011:
<?php $args = array( 'year' => 2011, 'monthnum' => 05, 'day' => 03 ); query_posts( $args ); ?>
Da mesma forma você poderá filtrar os posts em situações particulares, como por exemplo o arquivo do mês anterior ao atual:
<?php $ano = date( 'Y' ); $mes_anterior = date( 'm' )-1; if ( $mes_anterior == 0 ) { $mes_anterior = 12; $ano--; } $args = array( 'year' => $ano, 'monthnum' => $mes_anterior ); query_posts( $args ); ?>
LINKS PARA A PÁGINA DE ARQUIVOS DE DATAS
A criação de uma consulta personalizada (mostrada acima) é pouco necessária exceto os casos específicos como a existência de um formulário de consulta avançada por exemplo. Para deixar funcionando apenas uma página responsável pela listagem de artigos por datas utilize a paginação padrão do seu tema, passando as seguintes urls:
<?php $ano = get_the_time( 'Y' ); echo '<a href="' . get_year_link( $ano ) . '">Arquivo de ' . $ano . '</a>'; $mes = get_the_time( 'm' ); $mes_nome = get_the_time( 'F' ); echo '<a href="' . get_month_link( $ano, $mes ) . '">Arquivo do mês de ' . $mes_nome . ' de ' . $ano . '</a>'; $dia = get_the_time( 'd' ); echo '<a href="' . get_day_link( $ano, $mes, $dia ) . '">Resultados para ' . $dia . ' de ' . $mes_nome . ' de ' . $ano . '</a>'; ?>
ORDENAR POR DATA
Por padrão a ordenação dos resultados é feita em ordem cronológica descendente, ou seja, partindo inicialmente do mais recente nas primeiras posições até o mais antigo na última.
<?php query_posts( 'orderby=date&order=DESC' ); ?>
Caso queira em determinada situação exibir inicialmente os mais antigos troque o parâmetro da função da seguinte forma:
<?php query_posts( 'orderby=date&order=ASC' ); ?>
ORDENAR POR DATA DE ALTERAÇÃO DO CONTEÚDO
A ordenação acima é realizada com base na data de publicação de um material. Após a data de publicação é comum o mesmo material sofrer alterações ao longo do tempo. Em muitos casos as datas de atualização são esquecidas e os usuários mal chegam a saber que determinado conteúdo foi atualizado. Para resolver esse problema, determine um filtro para ordenar os resultados pela data de alteração:
<?php query_posts( 'orderby=modified' ); ?>
DEFINIR FORMATO DE DATA A SER EXIBIDO
Configure qual formato deseja exibir as referências de tempo em seu blog acessando o seu painel, no menu principal os itens ‘Configurações’ > ‘Geral’. Identifique as guias Formato de data e Formato de hora e selecione qual modelo prefere entre os fornecidos pelo sistema. Fora esses formatos pré-definidos você poderá definir um modelo próprio de acordo com a Documentação sobre a formatação da Data e Hora do WordPress.
EXIBIR DATA DE PUBLICAÇÃO
Mostre em seu tema quando determinado artigo foi publicado usando:
<p>Data de publicação: <?php the_date(); ?></p>
A função acima irá exibir a data de publicação para os posts ou então de um agrupamento de posts, ou seja, ao exibir uma listagem de resultados apenas a primeira ocorrência entre muitas de uma única data terá o valor da data impresso.
SEMPRE EXIBIR A DATA DE PUBLICAÇÃO DOS ARTIGOS
Contornando o problema acima apresentado é possível exibir a data para todos os resultados de sua paginação, até para aqueles do mesmo dia usando:
<?php echo '<p>Data de publicação: ' . get_the_date() . '</p>'; ?>
EXIBIR DATA DE ATUALIZAÇÃO DO ARTIGO
Conforme foi explorado acima é interessante trabalhar com as datas de atualização do conteúdo e nesses casos a exibição das respectivas datas se fazem muito relevantes.
<p>Última atualização: <?php the_modified_time(); ?></p>
FORMATOS PERSONALIZADOS PARA AS DATAS
Em todos os casos de exibição de datas apresentados o formato a ser seguido será aquele identificado através do painel de administração. No entato é possível personalizar esse formato individualmente para cada vez que uma dessas funções forem chamadas passando o formato como parâmetro para elas:
<?php // Exemplo para o dia 3 de Maio de 2011 the_date( 'd-m-Y' ); // 03-05-2011 the_modified_date('j, F Y - G:i:s'); // 03, Maio 2011 - Hora:minuto:segundo ?>
Abraços