WP_Query get_the_post_thumbnail not working
-
Hello,
I am trying to make custom widget which shows the most recent post in the Project category. It should give me the post title, the thumbnail if there is any or a default image, the excerpt and link to read more of the post.
This is my code for the widget:$args = array( 'posts_per_page' => 1, 'post_status' => 'publish', 'cat' => 'Projects', 'orderby' => 'date', 'order' => 'DESC', 'post__not_in' =>get_option('sticky_posts')); $query = new WP_Query( $args ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); $author = get_the_author(); $excerpt = get_the_excerpt(); echo ' <div><h5>'. get_the_title() .'</h5> <a href="'. get_permalink(). '"> <div class="img-border">' . check_for_thumbnail() . '</div> </a> <p> ' . string_limit_words($excerpt,20) . ' <br> <a class="more" href="' . get_permalink() . '">view more</a> </p></div>'; } } wp_reset_postdata();and here is my check_for_thumbnail() function code:
function check_for_thumbnail() { if ( has_post_thumbnail() ) { get_the_post_thumbnail(); } else { echo '<img src="' . get_template_directory_uri() . '/images/noimage.jpg" alt="no-thumbnail-to-show"/>'; } }The problem is that it does not outputs neither the thumbnail nor the default image. Also if change get_the_post_thumbnail() to the_post_thumbnail() it outputs the thumbnail of the post but no in the <div class=”img-border”></div> but on the top of all the content.
Can somebody please help me about this?
The topic ‘WP_Query get_the_post_thumbnail not working’ is closed to new replies.