Wordpress特色图片作为背景

时间:2013-11-26 23:49:45

标签: php wordpress

我试图回应一个帖子的特色图像作为背景图像。我已经看到了一些应该可行的地方,但我似乎无法使它适合我自己。

//Here i get the image as a thumbnail 
 <?php 
 if ( has_post_thumbnail()) {
   $image = the_post_thumbnail('thumbnail');
 }
 ?>
     // Here i try to get it as a background image and nothing 
<div style="width:405px;height:277px;background-image:url('<?php echo $image; ?>');">
    <img src="<?php bloginfo('template_url'); ?>/images/foreground.png"/>
</div>

但是,如果我使用这个,我可以回显缩略图

<?php echo '<img src="' . $image . '"/>'; ?>

我觉得我错过了一些小而愚蠢的东西,但它是什么?

2 个答案:

答案 0 :(得分:1)

检查此代码并告诉我这是否适合您 -

<?php if ( has_post_thumbnail() ): ?>
<?php 
    $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'thumbnail'); 
?>

<div style="width:405px;height:277px;background-image:url('<?php echo $image[0]; ?>');">
    <img src="<?php bloginfo('template_url'); ?>/images/foreground.png"/>
</div>

<?php endif; ?>

答案 1 :(得分:0)

如果您想使用post thumbnail作为背景图片,则无法使用此功能,因为它会使用缩略图图片打印img元素,而您可以使用wp_get_attachment_url

$url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );

然后将此图像用作背景

<div style="background:url('<?php echo $url; ?>');"></div>

这是在循环内部,如果你想在循环之外使用它,那么你必须传递post ID