Chamar posts por data
-
Ôpa!
Estou com uma bela dúvida: como faço para exibir os posts por data semelhante à esta página do Governo de São Paulo?
Sei que tem algo a ver com CSS, claro, mas gostaria de saber como criar a classe que reconhece quais posts são do dia e quais não são.
Obrigado!
-
O WordPress já lista por data como padrão se eu não me engano.
Agora se você quiser fazer a divisão:
Exemplo:
Dia/MEs/ANO
00:02 Post 0
00:00 Post 1
—————–
Dia/MEs/ANO
00:02 Post 0
00:00 Post 1Eu também fiquei curioso para saber como fazer essa separação, mas acredito que com alguma função PHP consiga isso.
Como o João Netto falou os posts já são listados por data de postagem.
O que vc queria era criar a divisão entre os meses?
Quero criar uma divisão entre os dias. Acessem o link que disponibilizei. Quero que as notícias mais recentes, no caso, do dia mais recente, fiquem com uma estilização… As anteriores fiquem com outra estilização.
Acessem o link. Olhando pra ele ficará mais fácil de entender que o que eu quero é diferente do que o padrão já oferece.
Basta colocar dentro do seu loop a verificação de dia e adicionar uma class diferente aos posts.
Vamos a um exemplo do loop e posts comuns.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> <div id="post-<?php the_ID(); ?>" class="post postagem"> conteúdo do post normal </div> <?php endwhile; endif; //Finalizando Loop ?>Resultado
<div id="post-4" class="post postagem"> conteúdo do post normal </div>Agora vamos fazer um loop e adicionar uma class especial na div do post para vc personalizar diferentemente da div comum.
Vamos levar em conta a verificação do dia que é o que vc quer.<?php $dia_atual = date("d"); if (have_posts()) : while (have_posts()) : the_post(); $data_post = get_the_time('d'); ?> <div id="post-<?php the_ID(); ?>" class="post postagem<?php if($dia_atual == $data_post) { echo '-dia'; } ?>"> conteudo do post normal </div> <?php endwhile; endif; //Finalizando Loop ?>Resultado
<div id="post-4" class="post postagem-dia"> conteúdo do post normal </div>Com este loop vc terá 2 classes para personalizar “post” e “postagem-dia”
a class postagem não precisa ser personalizada e só foi adicionado assim para não ficar com espaço vazio na class caso o dia não tenha postagem.
Também tem como trocar todo o código php para gerar um post completamente diferente.
Exemplo: eu uso isso com o script timthumb.php para gerar imagens de tamanho diferentes, neste caso não funciona só trocar uma class do post, tem que trocar todo o código com base na verificação que foi feita.
Essa verificação foi feita com o dia atual, mas pode ser feito ferificando a semana, mês e até hora.
Espero que eu tenha ajudado.
Espera ter ajudado?
Você foi um pai! Rss. Obrigado, cara.
Vou implementar aqui e ver como fica. Volto e comento, pra só então o tópico ser fechado. =)
Que bom que vc gostou, espero que funcione ai também.
Eu fiz uma coisa parecida para o ano. Vê se dá pra adaptar:
http://arq.ufsc.br/infoarq/?page_id=17$myposts = get_posts("cat=$lista_categorias&showposts=10&paged=$paged"); foreach($myposts as $post) : setup_postdata($post); $ano = get_the_time('Y'); insere_ano_pesquisa($ano);//chama função definida no functions.php ?> conteúdo do post normal <?php endforeach;?>E no functions.php:
function insere_ano_pesquisa($ano){ global $post, $anoanterior; If ($ano!==$anoanterior) { echo '<h2 class="ano">'.$ano.'</h2>'; } $anoanterior=$ano; }Renato, dei uma rápida olhada no que você enviou. Obrigado!
Pelo que me vi, dá, sim. Vou usar o do Myst1010 primeiro, e depois vejo com o teu. Volto aqui e comento também.
No caso, vou mostrar em imagem como ficou e só então fechar o post. Obrigado a todos!
O tópico ‘Chamar posts por data’ está fechado para novas respostas.