0

By using below code, I got Image url like "http://localhost..." but I need root path of that image from "var/www/html/.... "

 $FeaturedImage = wp_get_attachment_image_src( get_post_thumbnail_id(
 $post->ID ), 'homepage-column1' );

Is there any way to get root path of the post thumbnail?

1

The get_attached_file() function returns the path to a file based on the attachment ID:

$FeaturedImage = get_attached_file( get_post_thumbnail_id() );

Getting the path to a specific size is more complicated. WordPress stores the filename for resized versions of the images in as attachment metadata, that can be retrieved with wp_get_attachment_metadata(). Once you have the filename of the resized version, you just need to replace the original filename in the path with the resized version's filename:

$image_id   = get_post_thumbnail_id();
$image_meta = wp_get_attachment_metadata( $image_id );
$image_path = get_attached_file( $image_id );

if ( isset( $image_meta['sizes']['homepage-column1']['file'] ) ) {
    $image_path = str_replace( $image_meta['file'], $image_meta['sizes']['homepage-column1']['file'], $image_path );
}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.