【发布时间】:2019-08-15 14:20:28
【问题描述】:
使用 ACF(高级自定义字段)重复字段时,标记应如下所示以启动循环。
<? if( have_rows('my-repeating-field) ): ?>
<? endif ?>
但是,我想让这个动态化,这意味着我使用另一个 PHP 变量作为 if() 代码的一部分,如下所示:
<? $variable = get_field('my-variable-field'); ?>
<? if( have_rows("'" . $variable . "-repeating-field" . "'") ): ?>
<? endif ?>
但是,这不起作用。有没有办法用 ACF/PHP 做到这一点?对我来说似乎很简单?
【问题讨论】:
-
你检查
$variable有没有价值?您可以尝试$row_field = $variable . '-repeating-field';,然后使用var_dump检查它是否具有更正值。然后如果它是正确的尝试if(have_rows($row_field)... -
是的,它按预期输出,但仍然不起作用。即 $变量。 '-repeating-field' = variablevalue-repeating-field ?>
-
“variablevalue-repeating-field”是 ACF 转发器字段名称吗?
-
您以一种奇怪的方式引用字符串,因此该值将包含单引号...
have_rows($variable . '-repeating-field')应该足够了 -
干杯 @naththedeveloper - 这行得通!如果您想将其放入答案中,我会将其标记为已接受。
标签: php wordpress advanced-custom-fields