Php 在“之后显示价值”;而";来自ACF中继器字段
我试图通过ACF中继器字段ID-s显示自定义post数组 我只从$value中获得一个值,例如: 'post__in'=>数组(905) 但它应该是: 'post__in'=>数组(15905,1,2,3)Php 在“之后显示价值”;而";来自ACF中继器字段,php,wordpress,advanced-custom-fields,Php,Wordpress,Advanced Custom Fields,我试图通过ACF中继器字段ID-s显示自定义post数组 我只从$value中获得一个值,例如: 'post__in'=>数组(905) 但它应该是: 'post__in'=>数组(15905,1,2,3) 明白了 <?php if( have_rows('take_away_order') ): $value = []; while ( have_rows('take_away_order') ) : the_row(); $value[] = get_sub_f
明白了
<?php
if( have_rows('take_away_order') ):
$value = [];
while ( have_rows('take_away_order') ) : the_row();
$value[] = get_sub_field('food');
?>
<?php endwhile;?>
<?php if (is_tax() || is_category() || is_tag() ){
$qobj = $wp_query->get_queried_object();
$args = array(
'posts_per_page' => 999,
'post_type' => 'menuu_toit',
'orderby' => 'menu_order',
'order' => 'ASC',
'post__in' => $value,
'tax_query' => array(
array(
'taxonomy' => $qobj->taxonomy,
'field' => 'id',
'terms' => $qobj->term_id
)
)
);
}
您在每个循环迭代中覆盖$value,当然只有最后一个值以这种方式“存活”。将$value作为一个数组开始($value=[];
在循环之前),然后在其中添加新元素,$value[]=…
和no数组($value)
,否则将得到一个数组。$value[]=…-这应该在While内完成?是的,在循环内。
<?php
if( have_rows('take_away_order') ):
$value = [];
while ( have_rows('take_away_order') ) : the_row();
$value[] = get_sub_field('food');
?>
<?php endwhile;?>
<?php if (is_tax() || is_category() || is_tag() ){
$qobj = $wp_query->get_queried_object();
$args = array(
'posts_per_page' => 999,
'post_type' => 'menuu_toit',
'orderby' => 'menu_order',
'order' => 'ASC',
'post__in' => $value,
'tax_query' => array(
array(
'taxonomy' => $qobj->taxonomy,
'field' => 'id',
'terms' => $qobj->term_id
)
)
);
}