Em muitos templates, é usado o resumo de um artigo e não ele inteiro. Isso é possível usando a tag more <!– more –>ou o resumo, que pode ser habilitado nas opções de tela da página ‘adicionar novo post’, do painel do wordpress. Você pode usar também o plugin evermore, mas lembre-se, quanto menor o número de plugins, mais leve seu site fica.
Em algumas situações, como desenvolvimento de templates para clientes, seria mais interessante ter esse recurso automático no blog. Isso é possível colocando a tag <?php the_excpert ?>no lugar da tag <?php the_content?>, no loop. Caso você não entenda como funciona o loop do wordpress, recomendo que leia o Codex do wordpress em português e o Loop em ação em inglês. O loop ficaria assim:
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <h1><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></h1> <?php the_time('F jS, Y') ?> by <?php the_author() ?> <h3><a href="<?php the_permalink(); ?>" title= "<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_excerpt(''); ?> </a></h3> <?php endwhile; else: ?> <?php _e('Desculpe, não encontramos o artigo que você procurava'); ?> <?php endif; ?>
O padrão do ‘the_excpert’ é 55 palavras. Caso você queira mudar o número de palavras,
acrescente este código ao seu functions.php:
/* TAMANHO DO THE_EXCPERT */ add_filter('excerpt_length', 'my_excerpt_length'); function my_excerpt_length($length) { return 25; }
Agora o resumo do seu artigo aparescerá com 25 palavras. Para alterar, basta mudar o número 25 na linha ‘return 25;’ para o que melhor se adaptar ao layout do seu tema.
Podemos também, adicionar imagens nos resumos, usando a tag <?php the_post_thumbnail ?>. Nosso loop ficaria assim:
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } ?> <h1><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></h1> <?php the_time('F jS, Y') ?> by <?php the_author() ?> <h3><a href="<?php the_permalink(); ?>" title= "<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_excerpt(''); ?> </a></h3> <?php endwhile; else: ?> <?php _e('Desculpe, não encontramos o artigo que você procurava'); ?> <?php endif; ?>
Se você quiser mostrar apenas o penúltimo post no loop, basta acrescentar o seguinte código abaixo da linha
<?php while (have_posts()) : the_post(); ?>:
Créditos do código: Madly luv
<?php $lastposts = get_posts('numberposts=1&offset=1'); foreach($lastposts as $post) : setup_postdata($post); ?>
Agora insira a tag <?php endforeach; ?> antes da tag <?php endwhile; else: ?> e o loop está pronto. Caso você
queira mostrar o último e o antepenúltimo post, troque o número 2 pelo número 1 em ‘numberposts=1’. Vamos ver
como ficou nosso loop?
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php $lastposts = get_posts('numberposts=2&offset=1'); foreach($lastposts as $post) : setup_postdata($post); ?> <?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } ?> <h1><a href="<?php the_permalink() ?>" rel="bookmark" title= "Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></h1> <?php the_time('F jS, Y') ?> by <?php the_author() ?> <h3><a href="<?php the_permalink(); ?>" title= "<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_excerpt(''); ?> </a></h3> <?php endforeach; ?> <?php endwhile; else: ?> <?php _e('Desculpe, não encontramos o artigo que você procurava'); ?> <?php endif; ?>
Pronto, agora temos o loop mostrando o penúltimo e o antepenúltimo post. Abaixo segue o código inserido na index.php ou no single.php:
<?php get_header(); ?> <div class="content"> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php $lastposts = get_posts('numberposts=2&offset=1'); foreach($lastposts as $post) : setup_postdata($post); ?> <?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } ?> <h1><a href="<?php the_permalink() ?>" rel="bookmark" title= "Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></h1> <?php the_time('F jS, Y') ?> by <?php the_author() ?> <h3><a href="<?php the_permalink(); ?>" title= "<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_excerpt(''); ?> </a></h3> <?php endforeach; ?> <?php endwhile; else: ?> <?php _e('Desculpe, não encontramos o artigo que você procurava'); ?> <?php endif; ?> </div> <!-- fecha a div content --> <?php get_sidebar(); ?> <?php get_footer(); ?>
Gostou do artigo? Já utilizava a função the_excpert, ou prefere criar os resumos manualmente? Prefere o uso de plugins? Comente abaixo.