the_post_thumbnail в цикле WordPress не будет работать

Я тоже новичок в этом, и я не могу заставить свой цикл показывать избранные изображения из постов в WordPress.

Я пытался с the_post_thumbnail и
просмотрел https://codex.wordpress.org/Post_Thumbnails и другие подобные вопросы.

Надеюсь, вы можете помочь.

Теперь мой цикл выглядит так:

  <?php
$query = new WP_Query(array(
'posts_per_page'   => 4,
));

while ($query->have_posts()): $query->the_post(); ?>
<ul>
<li><?php the_title(); ?></li>
<li><?php echo get_the_date(); ?></li>
<li><?php
if ( has_post_thumbnail() ) {
the_post_thumbnail('thumbnail');
} ?>
</li>
</ul>
<?php endwhile;
wp_reset_postdata();
?>

0

Решение

Здесь я отправляю код для вас, пожалуйста, проверьте.

<?php

//Args
$myquery = array(
'post_type'      => 'post', // Here you add your post type
'posts_per_page' => 4,
'orderby'        => 'post_date',
'order'          => 'DESC'
);

// The Query
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post(); ?>
<?php /* grab the url for the full size featured image */
$featured_img_url = get_the_post_thumbnail_url(get_the_ID(),'full'); ?>
<ul>
<li><?php echo get_the_title(); ?></li>
<li><?php echo get_the_date(); ?></li>
<li><img src="<?php echo $featured_img_url; ?>" /></li>
</ul>
<?php }
/* Restore original Post Data */
wp_reset_postdata();
} else {
// no posts found
}
0

Другие решения

Вы можете попробовать этот код, возможно, он работает.

<?php
$query = new WP_Query(array(
'posts_per_page'   => 4,
));

while ($query->have_posts()): $query->the_post(); ?>
<ul>
<li><?php the_title(); ?></li>
<li><?php echo get_the_date(); ?></li>
<li><?php
if ( has_post_thumbnail() ) {
$image = get_the_post_thumbnail('thumbnail');
} ?>
</li>
</ul>
<?php endwhile;
wp_reset_postdata();
?>
0

Вам нужно добавить add_theme_support( 'post-thumbnails' ); на ваш functions.php файл для работы миниатюр

0

Я исправил код. В таких случаях вы можете использовать get_the_post_thumbnail( $post_id ) функция и назначить его переменной. Тогда ты можешь echo Это.

<?php
$query = new WP_Query(array(
'posts_per_page'   => 4,
));

while ($query->have_posts()): $query->the_post(); ?>
<ul>
<li><?php the_title(); ?></li>
<li><?php echo get_the_date(); ?></li>
<li><?php
$thumbnail = '';
if ( has_post_thumbnail( get_the_ID() ) ) {
$thumbnail = the_post_thumbnail( get_the_ID(), 'thumbnail');
}
echo $thumbnail; ?>
</li>
</ul>
<?php endwhile;
wp_reset_postdata();
?>

Вы можете просмотреть подробную разницу между двумя функциями на Как получить избранные изображения в WordPress — the_post_thumbnail & get_the_post_thumbnail

0
По вопросам рекламы [email protected]