![]()
Muitos temas de WordPress mostram na index um resumo do post juntamente com um thumbnail, e a tempos eu procuro um método mais fácil de fazer isso sem utilizar nenhum script externo ou mesmo “Custom Fields” para tal.
Vejo muitos temas por ai utilizando “Custom Fields” para colocar um thumb na index, mas isso é muito trabalhoso muitas vezes tendo que criar uma imagem separada só para o thumb. O método que eu vou explicar agora usa a primeira imagem que for anexada no post, ou seja o script pega a thumb criada pelo wordpress e coloca automaticamente onde você quiser.
O thumbnail já vem configurado como default nas configurações de Media, mas você pode configurá-lo como desejar.
![]()
Depois de ter configurado o tamanho do thumbnail, abra o index.php do seu tema e dentro do Loop do WordPress coloque o seguinte código, que vai pegar o thumbnail da primeira imagem anexada no seu post.
<?php
//Pega as imagens anexadas desse post
$args = array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'numberposts' => -1,
'order' => 'ASC',
'post_status' => null,
'post_parent' => $post->ID
);
$attachments = get_posts($args);
if ($attachments) {
foreach ($attachments as $attachment) {
$img = wp_get_attachment_thumb_url( $attachment->ID );
break;
}
}
echo "<img src='$img' /?>";
//Mostrando a imagem by http://www.hotpress.com.br
?>
Explicando o Código
Primeiramente buscamos as imagens anexadas ao post, se existir alguma imagem, buscar o caminho para o thumbnail usando a função wp_get_attachment_thumb_url.
Agora você ja tem o caminho da imagem ($img), podendo puxar a sua thumbnail sem utilizar scripts ou mesmo “Custom Fields”, só usando a tag html <IMG>.


legal o seu post, essa é uma das funções mais pedidas por desenvolvedores WordPress.
Mas acho que essa solução ficou um pouco complexa já que o desenvolvedor teria que adicionar todo esse código sempre que quisesse apresentar a imagem (multiplos loops por exemplo). Além disso a função get_posts carrega muito conteúdo na memória como: título, autor, data, etc; de vários anexos, quando precisamos somente do título e link da primeira imagem.
Caso tenha interesse esse post sugere uma solução mais simples: http://www.marcelomesquita.com/the_thumb/
Boa noite.. estou quebrando a cabeça com uma coisa semelhante… ao colocar um post envio a imagem do meu computador… adiciono no post.. até aí ok.. aparece na index, no canal e na exibição… mas se eu postar uma outra notícia e usar a imagem que já está no servidor, só aparece na exibição… no canal e na index nao… nao aparece nadinha…. tenho que carregar a mesma imagem novamente que o wordpress renomeia com um numero na frente.. aí aparece… quer dizer.. imagem de url nao aparece… mesmo que essa url seja no meu server…. tenho poucas imagens, e um monte duplicadas por causa disso.. e aff…. vai espaço… to de cabeça frita já e ainda nao consegui solucionar o problema…. essa sua idéia é super interessante… mas nao chama… aparece um X como se a imagem nao pudesse ser encontrada… poderia me dar uma ajuda.. obrigado pela atenção desde já…
Cara muito obrigado pela sua ajuda eu tive problemas com o tema arthemia referente a thumbs fiquei dias tentando resolver e pesquisando no google ate achar a sua dica, fabuloso funcionou perfeito coloquei o codigo no meu tema como vc explicou tudo funcionou otimamente bem recomendo a todos que tiverem problemas com thumbs usar essa dica que vale muito a pena cara muito obrigado mesmo valeu.
Legal cara, mas teria como fazer isso funcionar em paginas como search e archive?
hey daniel.. otimo script.. mas so tive um probleminha, apareceram os 4 1°s thumbs ai começou a repetir o ultimo.. verifiquei o numero de posts por pagina no tema e no wordpress e estava em 12..normal. tentei de tudo pra mostrar certo mais nada resolveu. tem alguma ideia do que pode ser?
Tenho tentado usar vários templates do estilo galeria e todos tem o mesmo problema (o problema na verdade é minha ignorância).
O tema atual – e espero que definitivo – é o ‘video game photo’.
Template ativo no site: http://fotosimagens.com/
As miniaturas não aparecem na página inicial, mas as fotos aparecem normalmente nas páginas individuais.
Já habilitei no tema o suporte a thumbnails inserindo o código no functions.php e mesmo assim as imagens não aparecem na home.
Qual pode ser o problema, ou melhor, a solução?