获取Pages的特色图片 - WordPress

时间:2015-10-13 22:51:06

标签: php wordpress

我有一个循环,可以获取当前页面的子页面的所有页面的标题,内容和链接。一切正常,但我不知道如何获取这些页面的精选图片网址,以便我可以将其用作背景图片。您可以在代码中看到我在哪里评论了我想要获取特色图片的网址。

这是我的代码:

<?php
    $mypages = get_pages( array( 'child_of' => $post->ID, 'sort_column' => 'menu_order', 'sort_order' => 'asc' ) );

     foreach( $mypages as $page ) {     
             $content = $page->post_content;
             if ( ! $content ) // Check for empty page
             continue;

             $content = apply_filters( 'the_content', $content );
             $trimmed_content = wp_trim_words( $content, 14, "..." );
             ?>
             <div class="service-box block-grid-item">
                <div class="row">
                   <div class="col-xs-6 col service-image">


             <!-- This is where I am trying to get the featured image url -->


             <?php $feat_image = wp_get_attachment_url( get_post_thumbnail_id($post->ID) ); ?>
                  <a href="<?php echo get_page_link( $page->ID ); ?>" style="background-image: url(<?php echo '$feat_image'; ?>)"</a>
                   </div>
                      <div class="col-xs-6 col service-body">
                        <a href="<?php echo get_page_link( $page->ID ); ?>">
                          <span class="service-title"><?php echo $page->post_title; ?></span>
                          <span class="service-text"><?php echo $trimmed_content; ?></span>
                          <span class="service-link">Read more</span>
                        </a>
                    </div>
                 </div>
             </div>

<?php   }   
?>

2 个答案:

答案 0 :(得分:2)

您已关闭,但您应该使用wp_get_attachment_image_src(),并应在echo来源时删除变量中的引号:

$feat_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'large' );
<a href="<?php echo get_permalink( $page->ID ); ?>" 
   style="background-image: url(<?php echo $feat_image; ?>)">

您还应该查看HTML标记并确保其有效。

答案 1 :(得分:0)

在上面的回答中,部分代码丢失了。这是完整的代码。

  <?php $feat_image = wp_get_attachment_image_src( get_post_thumbnail_id( 5 ), 'large' );
        print_r($feat_image);
     ?>
    <a href="<?php echo get_permalink( '5' ); ?>" 
       style="background-image: url(<?php echo $feat_image[0]; ?>)"> </a>