我正在开发自己的自顶向下模板,将所有页面加载到主页中。我的问题是,在图像的地方,似乎只有最后一个被充电的。例如,如果我有三个页面,每个页面都有不同的图像,那么将显示的图像始终是最后一页的图像。
我不知道问题是什么,我见过缓存问题,变量名相同的问题,无法解决。
您可以看到我如何做到这一点:
<section id="about">
<?php
$about = get_page_by_title( \'About\' );
$thumb_id = get_post_thumbnail_id($about);
$abouturl = wp_get_attachment_thumb_url($thumb_id);
?>
<span><?php echo $about->post_title ?></span>
<img src="<?php echo $abouturl ?>"/>
</section>
<section id="news">
<ul>
<?php
$posts = get_posts([\'cat\' => get_cat_ID(\'News\'), \'limit\' => 3, \'order\' => \'DESC\']);
foreach($posts as $post){
setup_postdata($post);
$thumb_id = get_post_thumbnail_id($post, \'news-image\');
$url = wp_get_attachment_thumb_url($thumb_id, \'300, 300\');
?>
<li data-link="<?php the_permalink() ?>">
<img src="<?php echo the_post_thumbnail_url(array(300, 150)); ?>"/>
<span>
<?php echo the_title(); ?>
</span>
</li>
<?php
wp_reset_postdata();
}?>
</ul>
</section>
<section id="contacts">
<?php
$contacts = get_page_by_title( \'Contacts\' );
$thumb_id = get_post_thumbnail_id($contacts);
$contactsurl = wp_get_attachment_thumb_url($thumb_id);
?>
<span><?php echo $contacts->post_title ?></span>
<img src="<?php echo $contactsurl ?>"/>
</section>
我怎样才能解决这个问题?如果您需要更多信息,请询问。
谢谢
SO网友:stims
我猜是因为你在使用
echo the_post_thumbnail_url(array(300, 150));
而不是
the_post_thumbnail_url(array(300, 150));
the_post_thumbnail_url
为您回显输出。
另一个观察结果是the_post_thumbnail_url
使用使用设置的post数据setup_postdata
, 因此,不需要这两条线:
$thumb_id = get_post_thumbnail_id($post, \'news-image\');
$url = wp_get_attachment_thumb_url($thumb_id, \'300, 300\');