如何从我的wordpress页面获取精选图像描述?

rug*_*ert 2 php wordpress

所以我设置了我的wordpress主题,以允许用户上传精选图像,我建立我的索引页面,以显示所选页面的特色图像,但也想显示图像的描述.

问题是,我没有使用循环,我使用wordpress的设置API作为选项拉取页面ID.

因此,显示特色图像的方式如下:

<?php $bucket_options = get_option('frontpage_display_options'); ?>
<?php $page_one = $bucket_options['frontpage_bucket_one']; ?>
<?php $page_one = get_post($page_one);  ?>
<?php if (has_post_thumbnail($page_one->ID)) : ?>  
      <?php echo get_the_post_thumbnail($page_one->ID, 'bucket'); ?>  
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

我一直在读这会起作用:

echo get_post(get_the_post_thumbnail_id($page_one->ID))->post_content;
Run Code Online (Sandbox Code Playgroud)

或这个:

echo get_post(get_the_post_thumbnail($page_one->ID))->post_content;
Run Code Online (Sandbox Code Playgroud)

但他们都没有显示任何东西

mar*_*dge 6

该功能正在等待新版本:http://core.trac.wordpress.org/ticket/12235

但是浮动的解决方案是在functions.php中创建一个函数:

function the_post_thumbnail_caption() {
  global $post;

  $thumbnail_id    = get_post_thumbnail_id($post->ID);
  $thumbnail_image = get_posts(array('p' => $thumbnail_id, 'post_type' => 'attachment'));

  if ($thumbnail_image && isset($thumbnail_image[0])) {
    echo '<span>'.$thumbnail_image[0]->post_excerpt.'</span>';
  }
}
Run Code Online (Sandbox Code Playgroud)

然后打电话 the_post_thumbnail_caption();

  • 这将输出标题,而不是描述。对于进入此页面寻找如何输出描述的其他任何人,除了将“post_excerpt”更改为“post_content”之外,其他方式都是相同的。 (2认同)
  • 在撰写本文时,这是在 WP 核心中实现的,因此您不必定义该函数,只需按照“the_post_thumbnail_caption()”的描述使用它。 (2认同)