WP Manifestindependent plugin directory
manifest / content / acf-repeater-gallery-extended

ACF Repeater & Gallery Extended

Adds Repeater and Gallery field types to ACF free with power-user enhancements.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/anisur2805/acf-repeater-gallery-extended/archive/refs/heads/master.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

A WordPress plugin that adds Repeater and Gallery custom field types to ACF free — features normally locked behind ACF Pro — plus power-user enhancements. Built test-first.

Requirements

  • PHP 8.1+
  • WordPress 6.0+
  • Advanced Custom Fields (free) 6.0+

The plugin self-deactivates with an admin notice if ACF is missing or incompatible. It never fatals.

What ships in v0.1

  • Plugin bootstrap with ACF ≥ 6.0 guard and lifecycle hooks.
  • Repeater (Extended) field type registered in ACF free.
  • Gallery (Extended) field type registered in ACF free with multi-select, min/max, return formats (array/URL/ID), and drag-to-reorder.
  • ACF-compatible storage for repeater rows ({field} count, {field}_{index}_{subfield} values, reference keys).
  • Server-side min/max row validation with ACF validation errors.
  • Deterministic row reordering.
  • Admin repeater UI with add/remove, move up/down, and drag-and-drop reorder.
  • Unit tests for pure logic (RowStore, RowRules).
  • Integration tests for field registration and repeater save/load/validation.
  • PHPCS, PHPStan, PHPUnit, and GitHub Actions CI scaffolding.

Installation

  1. Clone or unzip into wp-content/plugins/acf-repeater-gallery-extended.
  2. Run composer install.
  3. Activate the plugin in wp-admin.

Development

# PHP unit tests + static gates
composer install
composer run test:unit
composer run lint:php
composer run static:php

# JS/CSS build and lint (requires npm)
npm install
npm run build
npm run lint:js
npm run lint:css

# Integration tests (requires Docker + wp-env)
npx wp-env start
npm run test:integration
npx wp-env stop

Architecture

  • src/Plugin.php wires ACF field-type registration.
  • src/Fields/RepeaterField.php implements the repeater field type.
  • src/Fields/GalleryField.php implements the gallery field type.
  • src/Repeater/RowStore.php and src/Repeater/RowRules.php are pure, unit-tested classes.
  • assets/src/admin/repeater/ and assets/src/admin/gallery/ contain the admin JS/CSS source.
  • build/ contains the built admin assets.

License

GPL-2.0-or-later