Pregunta sobre Arreglando WordPress de Wordpress:

Ejecute un bucle anidado para transferir datos a una matriz, wordpress, ACF

Un usuario preguntó 👇

Tengo un problema con una matriz multidimensional. Específicamente, tengo varios bucles anidados que toman datos de ACF. Quiero que los datos de estos bucles se guarden como una matriz multidimensional. Este es específicamente mi código:

 <?php
$array_save=array();
if( have_rows('dtkpxd', 'option') ):
  while( have_rows('dtkpxd', 'option') ): the_row();
    //Begin dtkpxd
    if( have_rows('lnxd') ):
      while( have_rows('lnxd') ) : the_row();
        // Begin lnxd
        $tlnxd=get_sub_field('name_ln');
        if( have_rows('goth') ):
          while( have_rows('goth') ) : the_row();
            //   Begin goth      
            if( have_rows('gr_goth_1') ):
              while( have_rows('gr_goth_1') ) : the_row();
                $name_goth_1=get_sub_field('name_goth');
                if( have_rows('gr_gogia') ):
                  while( have_rows('gr_gogia') ) : the_row();
                    $name_gogia_xd_1_1=get_sub_field('gogia_1');
                    $pri_xd_1_1=get_sub_field('gigoi_1');
                    $name_gogia_xd_1_2=get_sub_field('gogia_2');
                    $pri_xd_1_2=get_sub_field('gigoi_2');
                    $name_gogia_xd_1_3=get_sub_field('gogia_3');
                    $pri_xd_1_3=get_sub_field('gigoi_3');
                    $name_gogia_xd_1_4=get_sub_field('gogia_4');
                    $pri_xd_1_4=get_sub_field('gigoi_4');                   
                  endwhile;
                endif;
              endwhile;
            endif;
            //end gr_goth_1
            if( have_rows('gr_goth_2') ):
              while( have_rows('gr_goth_2') ) : the_row();
                $name_goth_2=get_sub_field('name_goth');
                if( have_rows('gr_gogia') ):
                  while( have_rows('gr_gogia') ) : the_row();
                    $name_gogia_xd_2_1=get_sub_field('gogia_1');
                    $pri_xd_2_1=get_sub_field('gigoi_1');
                    $name_gogia_xd_2_2=get_sub_field('gogia_2');
                    $pri_xd_2_2=get_sub_field('gigoi_2');
                    $name_gogia_xd_2_3=get_sub_field('gogia_3');
                    $pri_xd_2_3=get_sub_field('gigoi_3');
                    $name_gogia_xd_2_4=get_sub_field('gogia_4');
                    $pri_xd_2_4=get_sub_field('gigoi_4');                   
                  endwhile;
                endif;
              endwhile;
            endif;
            //end gr_goth_2
            if( have_rows('gr_goth_3') ):
              while( have_rows('gr_goth_3') ) : the_row();
                $name_goth_3=get_sub_field('name_goth');
                if( have_rows('gr_gogia') ):
                  while( have_rows('gr_gogia') ) : the_row();
                    $name_gogia_xd_3_1=get_sub_field('gogia_1');
                    $pri_xd_3_1=get_sub_field('gigoi_1');
                    $name_gogia_xd_3_2=get_sub_field('gogia_2');
                    $pri_xd_3_2=get_sub_field('gigoi_2');
                    $name_gogia_xd_3_3=get_sub_field('gogia_3');
                    $pri_xd_3_3=get_sub_field('gigoi_3');
                    $name_gogia_xd_3_4=get_sub_field('gogia_4');
                    $pri_xd_3_4=get_sub_field('gigoi_4');                   
                  endwhile;
                endif;
              endwhile;
            endif;
            //end gr_goth_4
            //end goth
          endwhile;
        endif;
        //end lnxd
      endwhile;
    endif;
    //end dtkpxd
  endwhile;
endif;
?>

Quiero que este bucle almacene datos variables en $ array_save así:

$array_save=array(
    '0'=> array(
        '0'=>$tlnxd,
        '1'=>array(
            '0'=>array(
                '0'=>$name_goth_1,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_1_1,
                        '1'=>$pri_xd_1_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_1_2,
                        '1'=>$pri_xd_1_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_1_3,
                        '1'=>$pri_xd_1_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_1_4,
                        '1'=>$pri_xd_1_4
                        )
                    )
                ),
            '1'=>array(
                '0'=>$name_goth_2,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_2_1,
                        '1'=>$pri_xd_2_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_2_2,
                        '1'=>$pri_xd_2_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_2_3,
                        '1'=>$pri_xd_2_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_2_4,
                        '1'=>$pri_xd_2_4
                        )
                    )
                ),
            '2'=>array(
                '0'=>$name_goth_3,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_3_1,
                        '1'=>$pri_xd_3_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_3_2,
                        '1'=>$pri_xd_3_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_3_3,
                        '1'=>$pri_xd_3_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_3_4,
                        '1'=>$pri_xd_3_4
                        )
                    )
                )
            )
        ),
    '$i'=> array(
        '0'=>$tlnxd,
        '1'=>array(
            '0'=>array(
                '0'=>$name_goth_1,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_1_1,
                        '1'=>$pri_xd_1_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_1_2,
                        '1'=>$pri_xd_1_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_1_3,
                        '1'=>$pri_xd_1_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_1_4,
                        '1'=>$pri_xd_1_4
                        )
                    )
                ),
            '1'=>array(
                '0'=>$name_goth_2,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_2_1,
                        '1'=>$pri_xd_2_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_2_2,
                        '1'=>$pri_xd_2_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_2_3,
                        '1'=>$pri_xd_2_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_2_4,
                        '1'=>$pri_xd_2_4
                        )
                    )
                ),
            '2'=>array(
                '0'=>$name_goth_3,
                '1'=>array(
                    '0'=>array(
                        '0'=>$name_gogia_xd_3_1,
                        '1'=>$pri_xd_3_1
                        ),
                    '1'=>array(
                        '0'=>$name_gogia_xd_3_2,
                        '1'=>$pri_xd_3_2
                        ),
                    '2'=>array(
                        '0'=>$name_gogia_xd_3_3,
                        '1'=>$pri_xd_3_3
                        ),
                    '3'=>array(
                        '0'=>$name_gogia_xd_3_4,
                        '1'=>$pri_xd_3_4
                        )
                    )
                )
            )
        ),
    );

Variable $ i para mostrar más matrices de este tipo. Hay alguna solución para esto? Mi algoritmo no es muy bueno. En realidad, este es un ejercicio que realmente me duele, espero su ayuda. ¡Muchas gracias!

(@ kartiks16)

Hace 1 año, 9 meses

Hola,

Le sugiero que obtenga el soporte específico del plugin. Estarán encantados de ayudarle con su solicitud.

https://www.advancedcustomfields.com/support/

Gracias.

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *