Thumbnail Upload Warning getimagesize() warning: Filename cannot be empty

I want to add a auto-check thumbnail size function to my WordPress website, if the thumbnail size is less than 770px * 400px, it will not displayed on the top of the articles.

so I replace the original code:

Read More
<?php if( has_post_thumbnail() && ! has_post_format(‘video’) && ! has_post_format(‘audio’) && ! has_post_format(‘gallery’) ) : ?>

with

<?php
$display_thumbnail = true;
$thumbnail_size = getimagesize( wp_get_attachment_url( get_post_thumbnail_id() ) );
if ($thumbnail_size[0] < 770 || $thumbnail_size[0] < 400) {
$display_thumbnail = false;
}
?>
<?php if( has_post_thumbnail() && ! has_post_format('video') && ! has_post_format('audio') && ! has_post_format('gallery') && $display_thumbnail ) : ?>

Then the error occur: under the original code, if I didn’t upload an image, it will display nothing; but under the new code, if I didn’t upload an image, it will show the warning

Warning: getimagesize() [function.getimagesize]: Filename cannot be empty on...

Can someone tell me how to fix this issue?

Related posts

Leave a Reply

1 comment

  1. try

    <?php
    if(has_post_thumbnail()) {
        $attachment_src = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' );
        $display_thumbnail = is_array($attachment_src)
                            && $attachment_src[1] >= 770
                            && $attachment_src[2] >= 400;
    }
    ?>
    <?php if( has_post_thumbnail() && ! has_post_format('video') && ! has_post_format('audio') && ! has_post_format('gallery') && $display_thumbnail ) : ?>
    

    Edited: added ‘full’ argument to get the full size uploaded image.