Повторитель ACF случайный порядок - PullRequest
0 голосов
/ 28 июня 2019

У меня есть повторитель ACF, и я показываю по одному полю на каждой странице загрузки с помощью array_rand (), но мне нужно, чтобы поля показывались одно за другим в порядке (строка 1, строка 2, строка 3), поэтому случайность, но по порядку. Это то, что у меня сейчас, и я не могу понять, как сделать этот заказ.

if ( get_field('random_non-random') == 'random' ) {
      echo '<div class="all-featured-image landing">';
      $rows = get_field('random_featured_image' );
      $rand_row = $rows[ array_rand( $rows, 1 ) ];
      $rand_row_image = $rand_row['featured_image'];
      $image = wp_get_attachment_image_url( $rand_row_image, 'full' );
      echo '<img src=" ' . $rand_row_image['url'] .' " alt="' . $rand_row_image['alt'] .'" title="' . $rand_row_image['title'] .'">' ;    
      echo '</div>';    
    }

Похоже, мне нужно где-то использовать count ($ row)?

UPDATE ===
Это то, что я сделал, и это прекрасно работает:

if ( get_field( 'multiple_featured_images_enable' ) ) {
        if ( get_field('random_non-random') == 'random' ) {
            echo '<div class="all-featured-image landing">';
                $rows = get_field('random_featured_image' );
                $rand_row = $rows[ array_rand( $rows, 1 ) ];

                $rand_row_image = $rand_row['featured_image'];

                $image = wp_get_attachment_image_url( $rand_row_image, 'full' );

            echo '<img src=" ' . $rand_row_image['url'] .' " alt="' . $rand_row_image['alt'] .'" title="' . $rand_row_image['title'] .'">' ;
            echo '</div>';
        } else {
            if(!isset($_SESSION['featured_image_key'])){
                $_SESSION['featured_image_key'] = 0;
            }
            echo '<div class="all-featured-image landing">';
                $rows = get_field('random_featured_image' );
                $row = $rows[ $_SESSION['featured_image_key'] ];
                $row_image = $row['featured_image'];

                $image = wp_get_attachment_image_url( $row_image, 'full' );
            echo '<img src=" ' . $row_image['url'] .' " alt="' . $row_image['alt'] .'" title="' . $row_image['title'] .'">' ;
            echo '</div>';

            $_SESSION['featured_image_key']++;
            if($_SESSION['featured_image_key'] >= count($rows)){
                $_SESSION['featured_image_key'] = 0;
            }
        }

    }
...