我有“俱乐部”的自定义帖子类型和“俱乐部活动”的自定义帖子类型。如何在单个活动页面(而不是while循环)上获取俱乐部的名称?
我已经搜索过并搜索过,但我能找到的就是让它循环播放。
以下是单个活动页面的代码。
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<section class="entry-content">
<ul>
<li>Club Name: { get Club Name from Club post type relationship } </li>
<li>Other detail: <?php the_field('blah_blah'); ?>
<li>.....other details.....</li>
</ul>
<?php the_content(); ?>
</section>
<?php endwhile; endif; ?>
答案 0 :(得分:0)
您需要为$ club post对象设置postdata才能访问它:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post();
$club = get_field('club_field_name');
if($club):
$post = $club;
setup_postdata($post);
$club_name = get_the_title();
wp_reset_postdata();
endif; ?>
<h1><?php the_title(); ?></h1>
<section class="entry-content">
<ul>
<li>Club Name: <?php echo $club_name; ?> </li>
<li>Other detail: <?php the_field('blah_blah'); ?>
<li>.....other details.....</li>
</ul>
<?php the_content(); ?>
</section>
<?php endwhile; endif; ?>
有几点:
您必须记得在致电wp_reset_postdata();
后拨打setup_postdata($post);
电话,否则页面的其他位置无法正常工作(因为您正在覆盖主页面)环)
如果您想链接到俱乐部页面,可以将我的代码移到<li>
标签内,然后使用the_permalink();像往常一样输出页面的链接(我已经在你的代码之外完成了它以保持清晰)。
如果你仍然被困住,请给我一个喊叫。