我认为您的字段仍然需要放在while循环中,否则它只会显示一篇文章的数据。当循环切换到下一篇文章时,它不会再次执行代码ACF字段,因为这些字段当前不在循环中。
因此,请尝试以下操作:
<?php get_header(); ?>
<div id="main">
<hr>
<div id="content">
<?php
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
?>
<?php $work_years = get_field(\'work_years\'); ?>
<?php $image = get_field(\'image\'); ?>
<?php $function = get_field(\'function\'); ?>
<?php $certificates = get_field(\'certificates\'); ?>
<?php $website_link = get_field(\'website_link\'); ?>
<?php include \'postinfo.php\';?>
<?php
}
}else{
?>
<p><?php _e(\'Sorry, no posts matched your criteria.\'); ?></p>
<?php
}
?>
</div>
</div>
<div id="delimiter">
</div>
<?php get_footer(); ?>
以及postinfo。php将是:
<?php echo $work_years; ?><br />
<img src="<?php echo $image; ?>"><br />
<?php echo $function; ?><br />
<?php echo $certificates; ?><br />
<a href="<?php echo $website_link;?>">Website</a><br />
<h1><?php the_title(); ?></h1>
<h4>Posted on <?php the_time(\'F jS, Y\') ?></h4>
<p><?php the_content(__(\'(more...)\')); ?></p>
<hr>
顺便说一句,我不明白你为什么引入postinfo文件。php,而不是仅在第一个文件中包含这些代码。然而,我想你的理由是基于你的网站。