Suporte » Desenvolvendo com WordPress » Não exibir imagem quando não tiver imagem

  • Em meu theme quando um post não tem imagem, mostra uma imagem padrão (/images/image-pending.gif). Eu gostaria que, quando não tivesse imagem, não aparecesse a imagem padrão. Alguém pode me ajudar? O código referente a imagem, no functions.php reproduzo abaixo:

    # Get image attachment (sizes: thumbnail, medium, full)
    function get_thumbnail($postid=0, $size='full') {
    	if ($postid<1)
    	$postid = get_the_ID();
    	$thumb = get_post_meta($postid, "thumb", TRUE); // Declare the custom field for the image
    	if ($thumb != null or $thumb != '') {
    		echo $thumb;
    	}
    	elseif ($images = get_children(array(
    		'post_parent' => $postid,
    		'post_type' => 'attachment',
    		'numberposts' => '1',
    		'post_mime_type' => 'image', )))
    		foreach($images as $image) {
    			$thumbnail=wp_get_attachment_image_src($image->ID, $size);
    			?>
    <?php echo $thumbnail[0]; ?>
    <?php
    		}
    	else {
    		echo get_bloginfo ( 'stylesheet_directory' );
    		echo '/images/image-pending.gif';
    	}
    
    }
Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • usa a funçao do wordpress

    O problema é que a tag img já deve estar no próprio tema. Então, se não retornar o endereço da imagem provavelmente vai ficar uma imagem vazia…

    Para não retornar nenhuma imagem, basta retirar a parte correspondente ao último else.

    Se quiser resolver mesmo o problema, retire a tag img do tema e incorpore-a nos retornos da função. Assim, se não retornar nada, também não vai ter a tag poluindo seu tema.

    Ex.:
    echo '<img src=".$thumb.'" alt=""/>';

    Deve ter ficado confusa essa explicação. Qualquer coisa avisa.

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • O tópico ‘Não exibir imagem quando não tiver imagem’ está fechado para novas respostas.