Wordpress get_post_thumbnail_id没有返回任何内容

时间:2014-09-14 04:54:01

标签: php wordpress

为什么我在使用wp_get_attachment_image_src(get_post_thumbnail_id($post_id));时却没有得到任何结果当var_dump post_id我得到string(3) "652"时,我知道有一个ID

没有(string),它会给我int(652)

代码:

<?php
    $getPosts = new WP_Query(array('showposts' => 5, 'orderby' => 1));

     if($getPosts->have_posts()):
          $firstPost = true;

          while($getPosts->have_posts()):
                $getPosts->the_post();

              $cssClass = '';

              if($firstPost)
              {
                $cssClass = array('article','first-post');
                $postValue  = get_the_ID();
                $post_id    = (string)$postValue;
              }else{
                $cssClass = array('article');
              }
?>

<?php if($firstPost): ?>
    <?php $image =  wp_get_attachment_image_src(get_post_thumbnail_id($post_id));?>
    <a href="<?php echo $image[0];?>">Test</a>

1 个答案:

答案 0 :(得分:1)

您似乎错误地使用wp_get_attachment_image_src,如WordPress文档中所述:

  

返回一个有序数组,其值对应于(0)url,(1)   宽度,(2)高度,和(3)图像附件的刻度(或图标   代表任何附件。)

所以看起来您的代码应如下所示:

<?php if($firstPost): ?>
<?php
  $image_attributes = wp_get_attachment_image_src(get_post_thumbnail_id($post_id));
  $image = $image_attributes[0];
?>
<a href="<?php echo $image;?>">Test</a>

编辑:实际上,当您这样做时,我仍然不清楚您的使用情况:

<a href="<?php echo $image;?>">Test</a>

您是在<a href></a>设置图片网址吗?为什么?它不应该是这样的:

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