通过中继器获取自定义 post 类型字段

Get custom post type fields through a repeater

我在一个 WP 项目中。我创建了一个名为 Team Members 的自定义 post 类型 我还创建了一个自定义字段块,其中包含一个名为 contact_members 的字段,它是一个转发器,并且有两个名为 location_mapmember 的子字段。此 member 子字段与自定义 post 类型相关 team member

我对获得 location_map 没有任何问题。 问题是我无法获取 post 类型字段。 (来自 contact_members->成员->post 类型

  <?php
    $members = get_field('contact_members');
  ?>
  @foreach($members as $member)
    <div class="member {{ $member['location_map'] }}">
      <img class="map" src="{{ get_the_post_thumbnail_url($member['member']->ID) }}">
      <h3>{{ get_the_title($member['member']->ID) }}</h3>
      <p class="position">{{ $member['member']->position }}</p>
      <p class="location">{{ $member['member']->location }}</p>
      <a href="#">Contact</a>
    </div>
  @endforeach

乍一看,我看不出您的代码有任何问题。我认为最可能的情况是(因为我猜你正在使用 ACF 插件)$member['meber'] 变量保存 (int) post_id 而不是 Post 对象.你试过 var_dump() 了吗?

干杯!

我找到了答案,我应该把 [0] 放在 $member['member'] 之后,以便到达数组的第一个元素,然后我终于可以从对象中找到我想要的东西,所以:

<?php $members = get_field('contact_members'); ?>
@foreach($members as $member)
    <div class="member {{ $member['location_map'] }}">
        <img class="member-image" src="{{ get_the_post_thumbnail_url($member['member'][0]->ID) }}">
        <h3 class="member-name">{{ $member['member'][0]->post_title }}</h3>
        <p class="position">{{ $member['member'][0]->position }}</p>
        <p class="location">{{ $member['member'][0]->location }}</p>
        <a href="#">Contact</a>
    </div>
@endforeach