【问题标题】:How to get Post thumbnail url如何获取帖子缩略图网址
【发布时间】:2016-04-06 08:55:23
【问题描述】:

我有一页,可以显示类别中的帖子。
我会使用此代码

     <div id="grid" class="grid-container" style="display: block;">
     <ul class="grid columns-2">
     <?php
     $args = array(
    'category' => 0,
    'numberposts' => 9,
    'post_type' => 'post',
    'post_status' => 'publish',
    'suppress_filters' => true );
     $recent_posts = wp_get_recent_posts($args);
     foreach( $recent_posts as $recent ){
     echo '<li><a href="' . get_permalink($recent["ID"]) 
     . '" title="'.$recent["post_title"].'" ><img class="aligncenter wp-image-80" src="" alt="'.$recent["post_title"].'"/></a>
     <h4>'.$recent["post_title"].'</h4></li> ';
            }
        ?>
    </ul>
</div>

问题是,我无法显示缩略图。
我正在尝试找到如何获取帖子缩略图网址并将其放入其中

【问题讨论】:

标签: php wordpress


【解决方案1】:

get_the_post_thumbnail 不是正确答案,因为该函数调用为您提供了类似这样的内容:&lt;img src="#"&gt;,而不仅仅是一些 URL。

好吧,以这个为例。

据我了解,您只需要获取帖子缩略图 url,而不是完整的 HTML img 对象,这是您可以实现的方式:

$args =array('numberposts' => 1,'post_type' => 'post','order' => 'DESC', 'posts_per_page'  => 1);
$data = query_posts($args);
$something = NULL;
for($i=0;$i<count($data);$i++){ 
    $something[$i]['id'] = $data[$i]->ID;
    $post_thumbnail_id = intval(get_post_thumbnail_id( $something[$i]['id'] ));
    $array_thumbnail = wp_get_attachment_image_src( $post_thumbnail_id,'medium');
    $something[$i]['image_url']=$array_thumbnail[0];
    echo $something[$i]['image_url'];
}

$args = 查询的参数。

$data = 查询结果集。

$something = 您将用于存储您要使用的一组帖子的特色图片的 url 的数组(在这种情况下只是一个,作为查询之一论据是这样说的)。

$something[$i]['id'] = 您正在使用的每个帖子的 ID。

$post_thumbnail_id = 媒体库中当前帖子中设置为特色图片的图片的id。

$array_thumbnail = 您需要的图片的实际 url,如您所见,这意味着您正在获取当前设置为当前帖子中特色图片的 HTML img 对象的 src 值.

$something[$i]['image_url'] = 你要找的东西。

- 使用的功能 -

get_post_thumbnail_id($post_id)

wp_get_attachment_image_src($media_post_id,$size)

【讨论】:

    【解决方案2】:

    通过传递 Post Id 尝试以下 sn-p。

    get_the_post_thumbnail( $post_id );                   
    
    get_the_post_thumbnail( $post_id, 'thumbnail' );      // Thumbnail (Note: different to Post Thumbnail)
    get_the_post_thumbnail( $post_id, 'medium' );         // Medium resolution
    get_the_post_thumbnail( $post_id, 'large' );          // Large resolution
    get_the_post_thumbnail( $post_id, 'full' );           // Original resolution
    
    get_the_post_thumbnail( $post_id, array( 100, 100) ); // Other resolutions
    

    参考网址:
    https://developer.wordpress.org/reference/functions/get_the_post_thumbnail/

    【讨论】:

    • 这不是正确的答案。 OP 要求提供 URL。此 WP 函数返回缩略图图像标签。不是网址。
    【解决方案3】:

    使用get_the_post_thumbnail函数。
    在这种情况下,最好使用 WordPress 的循环基础。
    参考文献:
    https://codex.wordpress.org/The_Loop
    https://codex.wordpress.org/The_Loop_in_Action

    【讨论】:

    • 我一直在尝试这样做......我很困惑
    猜你喜欢
    • 2014-03-12
    • 1970-01-01
    • 2014-11-20
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    相关资源
    最近更新 更多