ManpreetSandhu
ManpreetSandhu

Reputation: 2155

How to get the WordPress post thumbnail (featured image) URL?

I am using this function to get the featured images:

<a href="#" rel="prettyPhoto">
    <?php the_post_thumbnail('thumbnail'); ?>
</a>

Now I want to get the full featured image on click on the anchor tag for which I need a featured image URL in

<a href="here" rel="prettyPhoto">

How can I fix this?

Upvotes: 178

Views: 610847

Answers (23)

<?php if (have_posts()) : while( have_posts()) : the_post(); ?>

   <?php $featured_img_url = get_the_post_thumbnail_url(get_the_ID(),'full'); ?>  

<?php endwhile; else: endif; ?>

Upvotes: 0

Arman H
Arman H

Reputation: 1754

if you want to fetch full image size from post thumbnail you can use this code.

$img_url = wp_get_attachment_image_url(get_post_thumbnail_id(get_the_ID()), 'full');
<img src="<?PHP echo $img_url?> ">

here, get_the_ID() is post id.

Upvotes: 4

Vicky P
Vicky P

Reputation: 742

You can get image src for specific size by wp_get_attachment_url function.

<?php 
    $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'full' ); 
?>
<img src="<?php echo $url ?>" />

Upvotes: 0

Joy
Joy

Reputation: 59

Simply inside the loop write <?php the_post_thumbnail_url(); ?> as shown below:-

$args=array('post_type' => 'your_custom_post_type_slug','order' => 'DESC','posts_per_page'=> -1) ;
$the_qyery= new WP_Query($args);

if ($the_qyery->have_posts()) :
    while ( $the_qyery->have_posts() ) : $the_qyery->the_post();?>

<div class="col col_4_of_12">
    <div class="article_standard_view">
        <article class="item">
            <div class="item_header">
                <a href="<?php the_permalink(); ?>"><img src="<?php the_post_thumbnail_url(); ?>" alt="Post"></a>
            </div>

        </article>
    </div>
</div>            
<?php endwhile; endif; ?>

Upvotes: 2

Jodyshop
Jodyshop

Reputation: 664

I had searched a lot and found nothing, until I got this:

<?php echo get_the_post_thumbnail_url( null, 'full' ); ?>

Which simply give you the full image URL without the entire <img> tag.

Hope that can help you.

Upvotes: 5

yahya akhtar
yahya akhtar

Reputation: 239

Try this one

<?php 
    echo get_the_post_thumbnail($post_id, 'thumbnail', array('class' => 'alignleft')); 
?>

Upvotes: 6

user3615759
user3615759

Reputation: 9

You can also get the URL for image attachments as follows:

<?php
    "<div><a href=".get_permalink(id).">".wp_get_attachment_url(304, array(50,50), 1)."</a></div>";
?>

Upvotes: 0

nim
nim

Reputation: 507

You can try this:

<?php 
    $feat_image = wp_get_attachment_url(get_post_thumbnail_id($post->ID)); 
    echo $feat_image; 
?>

Upvotes: 8

Use:

<?php 
    $image_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail_size');

    $feature_image_url = $image_src[0]; 
?>

You can change the thumbnail_size value as per your required size.

Upvotes: 0

Harry Bosh
Harry Bosh

Reputation: 3790

If the post is an image and we already know what the image is, it's possible to get the thumbnail URL without too much hassle:

echo pathinfo($image->guid, PATHINFO_DIRNAME);

Upvotes: 1

Viral M
Viral M

Reputation: 261

You will try this

<?php $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID), 'full'); ?> // Here you can manage your image size like medium, thumbnail, or custom size
    <img src="<?php echo $url ?>" 
/>

Upvotes: 3

Vishwajeet Mishra
Vishwajeet Mishra

Reputation: 77

This is the simplest answer:

<?php
    $img = get_the_post_thumbnail_url($postID, 'post-thumbnail');
?>

Upvotes: 8

Fredrick Boaz
Fredrick Boaz

Reputation: 169

I think this is the easiest solution and the updated one:

<?php the_post_thumbnail('single-post-thumbnail'); ?>

Upvotes: 11

farhan
farhan

Reputation: 31

You can also get the URL for image attachments as follows. It works fine.

if (has_post_thumbnail()) {
    $image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
}

Upvotes: 3

Dhyey
Dhyey

Reputation: 4335

You can also get it from post_meta like this:

echo get_post_meta($post->ID, 'featured_image', true);

Upvotes: 3

Dhruvin Moradiya
Dhruvin Moradiya

Reputation: 546

<?php
    if (has_post_thumbnail( $post->ID ) ):
        $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' );
?>
        <img src="<?php echo $image[0]; ?>">  
<?php endif; ?>

Upvotes: 1

Mizo Games
Mizo Games

Reputation: 189

<img src="<?php echo get_post_meta($post->ID, "mabp_thumbnail_url", true); ?>" alt="<?php the_title(); ?>" width ="100%" height ="" />

Upvotes: -1

Omprakash Patel
Omprakash Patel

Reputation: 552

// Try it inside loop.  
<?php
$feat_image = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
echo $feat_image;
?>

Upvotes: 23

LOLapalooza
LOLapalooza

Reputation: 2082

If you want JUST the source, and not an array with other information:

<?php $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'thumbnail' ); ?>
<img src="<?php echo $url ?>" />

 

Upvotes: 120

maxim
maxim

Reputation: 231

This perfectly worked for me:

<?php echo get_the_post_thumbnail_url($post_id, 'thumbnail'); ?>

Upvotes: 23

Jakir Hossain
Jakir Hossain

Reputation: 2517

You can try this.

<?php
   $image_url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
?>
<a href="<?php echo $image_url; ?>" rel="prettyPhoto">

Upvotes: 3

swapnesh
swapnesh

Reputation: 26732

Check the code below and let me know if it works for you.

<?php if (has_post_thumbnail( $post->ID ) ): ?>
  <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?>
  <div id="custom-bg" style="background-image: url('<?php echo $image[0]; ?>')">

  </div>
<?php endif; ?>

Upvotes: 371

Felipe Barnett
Felipe Barnett

Reputation: 407

Easy way!

 <?php 
     wp_get_attachment_url(get_post_thumbnail_id(get_the_ID()))
 ?>

Upvotes: 19

Related Questions