WordPress标题图片

时间:2013-04-19 13:09:56

标签: php wordpress

我的WordPress博客包含以下代码段:

<?php
    $images = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full');
    if (count($images) > 0) { ?>

       <div class="image-holder">
       <a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_directory') ?>/javascript/timthumb.php?src=<?php echo $images[0]; ?>&amp;h=320&amp;w=630&amp;zc=1" alt="<?php the_title();?>"  /></a>             
       </div>

    <?php }
?>

这会在实际内容之上显示标题图像(特色图像),并使用timthumbb来调整其大小。一切都很好,但如果没有定义的特色图片,它会显示一个破碎的img src。有没有办法编辑它,以便只显示图像,如果实际存在一个?

4 个答案:

答案 0 :(得分:0)

我用过它并且工作正常:

// get the ancestors
$familyTree = get_ancestors($post->ID, 'page');
array_unshift($familyTree, $post->ID); //add the current page to the beginning of the list

// loop through the family tree until you find a result or exhaust the array
$featuredImage = '';
foreach ($familyTree as $family_postid) {
    if (has_post_thumbnail($family_postid)) {
        $featuredImage = get_the_post_thumbnail($family_postid, 'full');
        // the 'full' argument tells WordPress not to re-size the image to thumbnail dimensions
        break;
    }
}

// if the page has a featured image then show it
echo ($featuredImage ? $featuredImage : "");

它还将特色图像应用于子页面,除非子页面具有自己的特色图像,不确定是否需要,但如果没有特色图像则不应该显示任何内容。

答案 1 :(得分:0)

Try using this logic

<?php

    if($images[0]!='')
    {
     <div class="image-holder">
           <a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_directory') ?>/javascript/timthumb.php?src=<?php echo $images[0]; ?>&amp;h=320&amp;w=630&amp;zc=1" alt="<?php the_title();?>"  /></a>             
           </div>
    }

    ?>

答案 2 :(得分:0)

如果只有一张图片,可以使用

if ($images[0]!='') {

答案 3 :(得分:0)

您可以使用功能has_post_thumbnail()来检查帖子是否包含精选图片。

使用方法:     

    $images = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full');
    if (count($images) > 0) { ?>

       <div class="image-holder">
       <a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_directory') ?>/javascript/timthumb.php?src=   <?php echo $images[0]; ?>&amp;h=320&amp;w=630&amp;zc=1" alt="<?php the_title();?>"  /></a>             
       </div>

    <?php }
} ?>