无法在自定义 post 类型循环中输出图像字段 URL

Can't output image field URL in custom post type loop

第一次建立 Wordpress 网站。在遍历特定 post 类型的 post 和检索数据值的基本概念时遇到了一些麻烦。

发布这个问题也是因为我找不到任何类似的问题。

<?php
    $gallery_args = array('post_type' => 'gallery');
    $gallery_array = get_posts( $gallery_args );
    foreach ( $gallery_array as $image ) : setup_postdata( $image );
?>
    <img src="<?php echo the_field( "image_upload"); ?>"/>
<?php
    endforeach;
    wp_reset_postdata();
?>

这就是我的。我看到图像的包含元素被重复这一事实证明了 for 循环的工作原理。然而,当它到达标签时,这是输出:<img src>.

如果有帮助,我正在使用 ACF 插件。

编辑

另请阅读the_field() 直接打印值。但是即使没有你在我上面的代码中看到的前面的 echo 它也不会输出。也试过 echo get_field().

您对 get_posts() 的调用似乎是在为您 运行 正在编写代码的页面抓取 $post 数据,而 不是 "Gallery" 自定义 post 类型。我不确定为什么会这样,但是我通过使用 wp_query() 而不是 get_posts()

正确地获得了对 运行 的查询

代码非常相似,但看起来像这样:

<?php 
    $gallery_args = array('post_type' => 'gallery');
    $gallery_array = new WP_Query( $gallery_args ); 
    while ( $gallery_array->have_posts() ) : $gallery_array->the_post(); 
?>
        <img src="<?php the_field("image_upload"); ?>" />
<?php 
    endwhile; 
    wp_reset_query();  // Restore global post data
?>