php ACF中继器场分页

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php ACF中继器场分页相关的知识,希望对你有一定的参考价值。

<?php
/* 
 * Paginate Advanced Custom Field repeater
 */
 
if( get_query_var('page') ) {
  $page = get_query_var( 'page' );
} else {
  $page = 1;
}
 
// Variables
$row              = 0;
$images_per_page  = 10; // How many images to display on each page
$images           = get_field( 'image_gallery' );
$total            = count( $images );
$pages            = ceil( $total / $images_per_page );
$min              = ( ( $page * $images_per_page ) - $images_per_page ) + 1;
$max              = ( $min + $images_per_page ) - 1;
 
// ACF Loop
if( have_rows( 'image_gallery' ) ) : ?>
 
  <?php while( have_rows( 'image_gallery' ) ): the_row();
 
    $row++;
 
    // Ignore this image if $row is lower than $min
    if($row < $min) { continue; }
 
    // Stop loop completely if $row is higher than $max
    if($row > $max) { break; } ?>                     
    
    <?php $img_obj = get_sub_field( 'image' ); ?>
    <a href="<?php echo $img_obj['sizes']['large']; ?>">
      <img src="<?php echo $img_obj['sizes']['thumbnail']; ?>" alt="">
    </a>
 
  <?php endwhile;
 
  // Pagination
  echo paginate_links( array(
    'base' => get_permalink() . '%#%' . '/',
    'format' => '?page=%#%',
    'current' => $page,
    'total' => $pages
  ) );
  ?>
 
<?php else: ?>
 
  No images found
 
<?php endif; ?>

以上是关于php ACF中继器场分页的主要内容,如果未能解决你的问题,请参考以下文章

php 准备使用ACF中继器

php ACF - 中继器

php ACF中继器

php ACF中继器阵列片

php 将重力表单列表保存到ACF中继器

表中的 ACF 中继器字段 - 在 PHP 模板中