我设法找到了一个解决方案——也许这对将来的人会有帮助……)
这个函数将创建一个类似于后端中继器的表。在这种情况下,可以根据需要调整4列并设置其样式。
function acf_repeater() {
$user_id = get_current_user_id();
ob_start(); ?>
<?php if( have_rows(\'repeater_name\',"user_{$user_id}" ) ): ?>
<table>
<tr>
<td>Column 1 header</td><td>Column 2 header</td><td>Column 3 header</td><td>Column 4 header</td>
</tr>
<?php while ( have_rows(\'repeater_name\', "user_{$user_id}" ) ) : the_row();
// vars
$var1 = get_sub_field(\'subfield_1_name\');
$var2 = get_sub_field(\'subfield_2_name\');
$var3 = get_sub_field(\'subfield_3_name\');
$var4 = get_sub_field(\'subfield_4_name\');
?>
<tr>
<td><?php echo $var1; ?></td><td><?php echo $var2; ?></td><td><?php echo $var3; ?></td><td><?php echo $var4; ?></td>
</tr>
<?php endwhile; ?>
</table>
<?php else: echo \'<span>No data</span>\'; ?>
<?php endif; ?>
<?php $output = ob_get_clean();
return $output;
}
add_shortcode(\'acf_repeater_shortcode\', \'acf_repeater\');`