我创建了一个循环来在我的 wordpress 网站上显示一些产品,它们似乎工作正常,但如果我在循环之后放置一个自定义字段,它不会显示。我知道它不是自定义字段本身的问题,因为如果我将它放在循环之上,它就可以正常工作。有谁知道我哪里出错了?
这是我的代码:
谢谢
我创建了一个循环来在我的 wordpress 网站上显示一些产品,它们似乎工作正常,但如果我在循环之后放置一个自定义字段,它不会显示。我知道它不是自定义字段本身的问题,因为如果我将它放在循环之上,它就可以正常工作。有谁知道我哪里出错了?
这是我的代码:
谢谢
您在循环中调用setup_postdata()
,因此覆盖了$post
对象。当您the_field('monoblock_valves_text');
在 foreach 循环之后调用时,它试图从循环的最后一个帖子中获取该自定义字段,而它显然需要从实际的帖子/页面显示中获取它。
您需要在循环之前存储旧的 $post 对象,并在循环之后恢复它,如下所示:
$old_post = $post;
foreach($products_mono_posts as $post):
setup_postdata($post);
// Rest of code
endforeach;
$post = $old_post;
setup_postdata($post);
the_field('blahblahblah');