The Repeater Carousel display format loops through each row of an ACF Repeater field and renders them inside a swipeable carousel powered by Swiper.js. Each row becomes its own inner-block context, so any blocks inserted inside — including ACF Sub-Field blocks — repeat per slide and resolve sub-field values automatically.
The carousel supports autoplay, responsive items-per-view, and an “items to slide” stride so you can control how many cards advance per swipe.
Supported Field Types
The Repeater Carousel display format supports the following field types:
- Repeater
Inner Blocks (Loop Item)
The loop item is the template rendered once per row of the bound repeater field — one card per carousel slide. Each row is exposed as block context, so any ACF Sub-Field block placed inside resolves to that row’s sub-field values automatically.
How to add blocks
- Click inside the loop item area. The placeholder reads “Click plus to add block or sub field into the repeater”.
- Use the “+” inserter to add blocks. The inserter prioritizes the ACF Repeater Sub-Field block, which is the most common choice inside a repeater loop.
- Standard WordPress blocks (Group, Columns, Heading, Image, etc.) also work — they’re cloned once per row but don’t read from the repeater context.
Resolving sub-field values
ACF Sub-Field blocks added inside the loop auto-scope their Field Source to the current repeater row — you don’t have to configure the source manually per block; just pick the sub-field name.
Editing vs. previewing the carousel
By default the block stays in Edit mode, where only the first row’s loop item is editable and the remaining rows render as live previews. Use the Edit / Preview toolbar toggle to switch to Preview mode, which renders the actual Swiper carousel (with autoplay, swiping, etc.) inside the editor.
Customization
Most of the layout’s appearance comes from the blocks you place inside each slide. The sidebar controls focus on the carousel’s behavior, sizing, and autoplay.
| Customization | Description | Note |
|---|---|---|
| Edit / Preview | Toolbar toggle that switches between editing the slide template and previewing the live carousel inside the editor. | Lives in the block toolbar. Only available when the layout is set to Carousel. |
| Items per slide | Number of cards visible at once per breakpoint (desktop / tablet / mobile). Range: 1–8. | |
| Autoplay | Automatically advances the carousel at a set interval. | |
| Delay | Seconds between automatic advances. Range: 1–10. | Only shown when Autoplay is enabled. |
| Pause on hover | Pauses autoplay while the cursor is over the carousel. | Only shown when Autoplay is enabled. |
| Items to slide | Number of cards advanced per autoplay tick or swipe. Bounded by Items per slide. | Lives in the Carousel Settings panel, with a per-breakpoint responsive control. Only shown when Autoplay is enabled. |
| Direction | Autoplay direction. Options: To Left, To Right. | Only shown when Autoplay is enabled. |
| Items Gap | Pixel spacing between adjacent slides. Range: 0–100. | Lives in the Dimensions panel under “Items Gap” (single horizontal gap). |
| Empty Message | Toggle (“Show message if empty”) plus fallback text shown when the repeater has no rows. | |
| Layout Variations | Switch the variation to render the same field as a list or grid instead of a carousel. | The List / Grid / Carousel toggles share the same underlying block — switching only changes the type attribute. |
The block also supports the following standard WordPress block controls: Block Alignment (wide, full), Margin, and Padding.