gpt4 book ai didi

arrays - 从 ACF 中继器创建 array()

转载 作者:行者123 更新时间:2023-12-02 10:38:09 25 4
gpt4 key购买 nike

我正在尝试从转发器创建多个数据数组。每行有 3 列;

  1. 总线类型
  2. 乐队食物
  3. band_no_food

第一列是文本,其他两列是选择列表。

我想要做的是循环遍历结果,并根据条件,将“bus_type”值存储在数组中,稍后我可以将其用作条件语句。我认为这样的事情会起作用,但没有任何运气;

$foo_a = array();
$foo_b = array();

if( have_rows('bus_type') ): while ( have_rows('bus_type') ) : the_row();

if (get_sub_field('band_food') == 'a') {
$foo_a[] = get_sub_field('bus_type');
} else if (get_sub_field('band_food') == 'b') {
$foo_b[] = get_sub_field('bus_type');
}

endwhile; endif;

有什么想法可以实现我想要的结果吗?

已解决

好的,看起来像将其存储为 VAR 一样有效。最终代码如下所示;

if( have_rows('bus_type') ): while ( have_rows('bus_type') ) : the_row();

$food_var = get_sub_field('band_food');

if ($food_var == 'a') {
$foo_a[] = get_sub_field('bus_type');
} else if ($food_var == 'b') {
$foo_b[] = get_sub_field('bus_type');
}

endwhile; endif;

最佳答案

这可能有效。它循环遍历给定的转发器字段,检查该值是否与 hamburger 匹配,如果匹配,则在数组 whihc 中注册总线类型。

<?php
$whihc = array();

// check if the repeater field has rows of data
if( have_rows('repeater_field_name') ):

// loop through the rows of data.
while ( have_rows('repeater_field_name') ) : the_row();

// check for some condition and register bus type in array.
if( the_sub_field('band_food') == 'hamburger' ):
$whihc[] = get_sub_field('bus_type');
endif;

endwhile;

endif;

?>

大部分代码取自此处:http://www.advancedcustomfields.com/resources/repeater/

关于arrays - 从 ACF 中继器创建 array(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34192274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com