Função que gera uma lista de últimos posts


Postado em 14 de outubro de 2010 por | Categorias: Loop no Wordpress, Posts | Tags: | 1 Comentário » | Comentar


Função é útil para exibir o conteúdo, resumo, campos personalizados. Coloque a seguinte função em functions.php do seu tema do WordPress:

function recent_posts($no_posts = 10, $excerpts = true) {

 global $wpdb;

 $request = "SELECT ID, post_title, post_excerpt FROM $wpdb->posts WHERE post_status = 'publish' AND post_type='post' ORDER BY post_date DESC LIMIT $no_posts";

 $posts = $wpdb->get_results($request);

 if($posts) {

 foreach ($posts as $posts) {
 $post_title = stripslashes($posts->post_title);
 $permalink = get_permalink($posts->ID);

 $output .= '<li><h2><a href="' . $permalink . '" rel="bookmark" title="Permanent Link: ' . htmlspecialchars($post_title, ENT_COMPAT) . '">' . htmlspecialchars($post_title) . '</a></h2>';

 if($excerpts) {
 $output.= '<br />' . stripslashes($posts->post_excerpt);
 }

 $output .= '</li>';
 }

 } else {
 $output .= '<li>No posts found</li>';
 }

 echo $output;
}

Para chamar a função insira o código abaixo em algum arquivo do tema:

<?php  recent_posts(); ?>
Share

Lista de posts com resumo com limite de caracteres no WordPress


Postado em 6 de agosto de 2010 por | Categorias: Posts | Tags: , , | 1 Comentário » | Comentar


A função the_excerpt() do WordPress retorna o conteúdo do campo Resumo do post ou se o campo resumo estiver vazio retorna um certo número de caracteres do corpo do texto.

Abaixo segue uma função que facilitará que você controle vários limites de caracteres no seu template.

Insira o código abaixo no arquivo functions.php do seu tema:

function excerpt($limit) {
$excerpt = explode(' ', get_the_excerpt(), $limit);
if (count($excerpt)>=$limit) {
array_pop($excerpt);
$excerpt = implode(" ",$excerpt).'(...)';

} else {

$excerpt = implode(" ",$excerpt);
}
$excerpt = preg_replace('`\[[^\]]*\]`','',$excerpt);
return $excerpt;
}
?>

Agora para usar a função no seu tema insira o código abaixo onde você quiser limitar com um número específico de caracteres o resumo do post.

<?php echo excerpt(50); ?>

Créditos Mateus Neves

Abaixo um exemplo prático que pega os 3 últimos posts da categoria novidades colocando o resumo com 30 caracteres:

<?php query_posts('category_name=Novidades&howposts=3&orderby=date'); ?>

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<div id="box_direita_destaques"> <? echo excerpt(30); ?> </div>
<br /><a href="<?php the_permalink(); ?>Leia mais</a><br />

<br /><br /><br /><?php endwhile; endif; ?>

Para limitar a quantidade de caracteres do post que será mostrado na tela use o comando the_content_limit() dentro do loop do WordPress. O número será a quantidade de caracteres do post que será mostrado na tela :

<?php the_content_limit(190); ?>

Limitar quantidade de caracteres no título do post:

<?php
$limit = 45;
$summary = get_the_title();</pre>
if (strlen($summary) > $limit)
$summary = substr($summary, 0, strrpos(substr($summary, 0, $limit), ' ')) . '...';
?>
Share

Montar uma lista de links para os últimos posts


Postado em 21 de julho de 2010 por | Categorias: Loop no Wordpress, Posts | Tags: , , , , , | Sem comentários » | Comentar


Como pegar os 6 últimos posts da categoria Novidades, exibindo um link pemanente para os posts:

<ul>
<?
$args = array(
'numberposts' => 6,
'category_name'=>'Novidades',
'orderby'=>'date'
);

$posts_blog = get_posts($args);
foreach($posts_blog as $blogp)

{ ?>
<li><a href="<?=the_permalink($blogp->guid);?>"><strong><?=$blogp->post_title;?></strong></a></li>
<? } ?>
</ul>

Para pegar o ID do post oa inves do permalink, basta mudar a tag HREF para:

<a href="<?=$blogp->guid;?>">

Se preferir montar o link do post usando a ID como variavel utilize estes exemplos:

<a href="/?p=<?=$blogp->ID;?>">Leia mais</a>

<a href="<?php echo get_option('home'); ?>/?p=<?=$blogp->ID; ?>" title="Continuar lendo ">Continuar Lendo</a>

Também pode ser montado o permalink do post usando o parametro post_name que pega o nome do post:

<a href="/<?=$blogp->post_name;?>">Leia mais</a>

Abaixo um exemplo de como pegar os 3 últimos posts da categoria artigos, criando um link com o nome do post:

<ul>
<?
$args = array(
‘numberposts’ =>3,
‘category_name’=>’Artigos’,
‘orderby’=>’date’
);

$posts_blog = get_posts($args);
foreach($posts_blog as $blogp)

{ ?>
<li><a href=”<?php echo get_option(‘home’); ?>/<?=$blogp->post_name;?>”><strong><?=$blogp->post_title;?></strong></a></li>
<? } ?>
</ul>

Para ler mais de uma categoria, troque ‘category_name’=>’Artigos’, pela linha abaixo.  Os números significam os ID’s das categorias:

'categories'=>'3,5',

Uma outra forma de fazer um loop em uma certa categoria pegando os links dos posts. Abaixo um exemplo que lista os 6 últimos posts da categoria notícias:

<ul>
<?php query_posts("category_name=Notícias&showposts=6"); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<li>
<a title="Acesse <?php the_title(); ?>" href="<?php the_permalink() ?>">
<?php the_title(); ?></a>
</li>

<?php endwhile; endif; ?>
</ul>

Para ler mais de uma categoria use a ID da categoria separado por virgula no parametro INCLUDE:

<?php query_posts("orderby=date&include=3,5&showposts=6"); ?>

Para saber mais sobre o método Query_posts, acesse:
http://www.pinceladasdaweb.com.br/blog/2008/03/14/query_posts-aprenda-a-personalizar-seu-blog-wordpress/

Share

Categorias

Links

Tags

Autor do post bloginfo() Caminho do tema Campos Personalizados Categorias Codificação UTF8 Contac form 7 CSS Custom fields Custom Post Types data Dividir string explode() Formatação de datas Formatação de Hora get_ get_option() get_page_template() get_the_terms get_the_title() Hora IMG is_single() Janelas Links Lista de Categorias Lista de Posts Lista de ùltimos posts location.href Paginação Post_name Query_posts register_sidebar Sidebar the_author_nickname() the_category() the_tags() the_time() Titulo da página UFT8_encode UTF8 UTF8_decode Widgets wp_list_categories() âncoras

Copyright © 2024  |   W-Pedia – Wikipedia Wordpress BR  |  produzido por Henderson C. Torres