带有ACF Repeater字段的PHP邮件格式

带有ACF Repeater字段的PHP邮件格式,php,wordpress,advanced-custom-fields,Php,Wordpress,Advanced Custom Fields,我正在开发一个模块,使用ACF中的一些自定义字段从WordPress帖子发送邮件 我的初始结构如下: $to = $wpp_send_status_email; $subject = $wpp_send_status_subject; $body = " <html> <table border='0' cellpadding='0' cellspacing='0' style='back

我正在开发一个模块,使用ACF中的一些自定义字段从WordPress帖子发送邮件

我的初始结构如下:

        $to = $wpp_send_status_email;
        $subject = $wpp_send_status_subject;
        $body = "
        <html>
        <table border='0' cellpadding='0' cellspacing='0' style='background: #fff; max-width:670px;margin:40px auto;text-align:left;color:#000;border: 1.3px solid rgba(0, 0, 0, 0.05);-webkit-border-radius: 10px;-moz-border-radius: 10px;border-radius: 10px;-webkit-box-shadow: 0px 5px 15px -10px rgba(0, 0, 0, 0.2); box-shadow: 0px 5px 15px -10px rgba(0, 0, 0, 0.2)'>
$to=$wpp\u发送状态\u电子邮件;
$subject=$wpp\u send\u status\u subject;
$body=”
代码工作正常,但当我必须使用带有if和else选项的repeater字段时,我没有成功。我的原始代码是:

<?php if(get_field('to-do')): ?>
  <tbody>
      <tr>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Tarefa</th>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Deadline</th>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Status</th>
      </tr>
    <?php while(has_sub_field('to-do')): ?>
      <tr style="border-top: 1px solid rgba(0, 0, 0, 0.05)">
      <td class="timeline-phase-activity ng-scope" style="text-align: left;vertical-align:middle;font-size:14px;width:60%;font-family:Arial,sans-serif;padding:10px 30px 10px 0"><span><?php the_sub_field('task-name'); ?></span></td>
      <td style="vertical-align:middle;text-align:left;padding-left: 24px;font-size:14px;font-family:Arial,sans-serif;padding:10px 0">
      <span style="padding-right:1.125rem"><?php the_sub_field('deadline'); ?></span>
      </td>
      <td style="text-align:left;vertical-align:middle;font-size:14px;font-family:Arial,sans-serif;;padding:10px 0"><span><?php the_sub_field('status'); ?></span>
      </td>
      </tr>
    <?php endwhile; ?>
  </tbody>
<?php endif; ?>

塔雷法
截止日期
地位

有人知道我是如何在HTML标签中包含这个字段的吗?我的另一个字段在“HTML”上。get_字段('结论',$post->ID)。“结构,但这不适用于if和else。

如果我正确回答了您的问题,您正在寻找一种方法将此内容放入
$body
变量中。这可以通过如下方式使用输出缓冲来实现:

  $to = $wpp_send_status_email;
  $subject = $wpp_send_status_subject;
  ob_start(); // start the output buffering
  if(get_field('to-do')): ?>
  <tbody>
      <tr>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Tarefa</th>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Deadline</th>
        <th style="font-family:Arial,sans-serif;text-align: left; vertical-align: middle; padding: 0 0 20px 0; font-size: 14px">Status</th>
      </tr>
    <?php while(has_sub_field('to-do')): ?>
      <tr style="border-top: 1px solid rgba(0, 0, 0, 0.05)">
      <td class="timeline-phase-activity ng-scope" style="text-align: left;vertical-align:middle;font-size:14px;width:60%;font-family:Arial,sans-serif;padding:10px 30px 10px 0"><span><?php the_sub_field('task-name'); ?></span></td>
      <td style="vertical-align:middle;text-align:left;padding-left: 24px;font-size:14px;font-family:Arial,sans-serif;padding:10px 0">
      <span style="padding-right:1.125rem"><?php the_sub_field('deadline'); ?></span>
      </td>
      <td style="text-align:left;vertical-align:middle;font-size:14px;font-family:Arial,sans-serif;;padding:10px 0"><span><?php the_sub_field('status'); ?></span>
      </td>
      </tr>
    <?php endwhile; ?>
  </tbody>
<?php
  endif;
  $body = ob_get_clean(); // retrieve the output buffer and save to $body
$to=$wpp\u发送状态\u电子邮件;
$subject=$wpp\u send\u status\u subject;
ob_start();//启动输出缓冲
if(get_字段('to-do')):?>
塔雷法
截止日期
地位

get\u sub\u field()
have\u rows()之外不起作用→ 
the_row()
context。您的repeater字段是如何构造的?请参阅文档:Hi@Damocles,谢谢您的返回。但是我需要帮助才能在PHP>Body>HTML结构中实现这一点。显然,我必须使用“.”。标记使PHP工作。