0

我有一个自定义帖子类型的特色图片,我试图在 div 中布局。由于某种原因,图像在页面上但在 div 之外。这是我第一次使用特色图片和自定义帖子类型。我错过了什么导致图像在 div 甚至开始之前出现在页面上?

if ($loop->have_posts()) {
    $output = '<div class="stories">';

    while($loop->have_posts()){
        $loop->the_post();
        $meta = get_post_meta(get_the_id());

        $output .= '
            <div class="story" style="float: left; display: block; border: 1px solid #CCC;">
                <a href="' . get_permalink() . '">
                    ' . get_the_title() . '</a>
                ' . the_post_thumbnail("medium") . '
                ' . get_the_excerpt() . '

            </div>
        ';
    }
    $output .= "</div>";
} else {
    $output = 'No Stories Added Yet.';
}

return $output;

当我查看 HTML 输出时,这是呈现的内容:

<div class="row-fluid ">
    <img class="attachment-medium wp-post-image" width="300" height="195" alt="13755721_m" src="http://code2media.net/wp-content/uploads/2013/04/13755721_m-300x195.jpg">
    <img class="attachment-medium wp-post-image" width="300" height="240" alt="African-Boy" src="http://code2media.net/wp-content/uploads/2013/05/Snotty-African-Boy-300x240.jpg">
<div class="stories">
    <div class="story" style="flost: left; display: block; border: 1px solid #CCC;">
        <a href="http://code2media.net/stories/story-2/"> Story 2</a>
        Test Content
    </div>
    <div class="story" style="flost: left; display: block; border: 1px solid #CCC;">
        Test Content
    </div>
4

2 回答 2

2

the_post_thumbnail("medium")在调用时立即回显图像缩略图,在您的其他 HTML 之外,因为它仍在构建中,并将空返回值附加到您的字符串。如果您希望该方法返回结果以附加到您的字符串(您这样做),那么您需要使用get_the_post_thumbnail($post->ID, "medium")

一般来说,以 开头的 WordPress 方法the_会回显结果,以 开头的方法get_会返回值。

于 2013-05-05T20:42:58.540 回答
0

the_post_thumbnail("medium") 将返回 img 标签。您可以获得特色图像 src 并根据需要使用。

看看这个

于 2013-05-05T20:49:08.447 回答