将最新的WordPress帖子的特色图片作为背景图片放入css

时间:2014-12-11 07:31:21

标签: php css wordpress

我试图将最新帖子的精选图片放入我网站顶部的div背景css中。

我目前有这个,我从这里的另一篇文章中得到了

<?php $src = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), array( 5600,1000 ), false, '' );?>
        <div class="case-hero" style="background-image: url('<?php echo esc_url( $src[0] ); ?>')">

这是拉动当前页面的精选图像。寻找解决方案,以便找到最新的。

任何帮助都会很棒! :)

2 个答案:

答案 0 :(得分:1)

$recent = get_posts( array('numberposts' => 10) );
$src = false;
foreach($recent as $p){
    if( has_post_thumbnail( $p->ID ) ){
         $src = wp_get_attachment_image_src( get_post_thumbnail_id($p->ID), array( 5600,1000 ), false, '' );
         break;
    }
}
if(!$src){
    $src = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), array( 5600,1000 ), false, '' );   
}

如果存在特色图像,这应检查最后10个帖子,如果找到,则将$ src设置为该图像。如果找不到特色图片,则会将其设置为此帖子的特色图片。

答案 1 :(得分:0)

如果您search the WordPress Codex,这会有所帮助。您可以使用wp_get_recent_posts()获取最新的帖子ID,然后将其用于get_the_post_thumbnail()

示例:

$recent_posts = wp_get_recent_posts( array('numberposts' => 1,) );
$most_recent_post_thumbnail = get_the_post_thumbnail( $recent_posts[0]['ID'] );

// Do whatever you want with $most_recent_post_thumbnail