PHPackages                             mvo/contao-group-widget - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mvo/contao-group-widget

ActiveContao-bundle[Utility &amp; Helpers](/categories/utility)

mvo/contao-group-widget
=======================

Adds a new group widget that allows repeating a set of DCA fields.

v1.6.2(3mo ago)28124.3k—5.1%11[2 issues](https://github.com/m-vo/contao-group-widget/issues)[3 PRs](https://github.com/m-vo/contao-group-widget/pulls)20MITPHPPHP &gt;=7.4CI passing

Since Jan 5Pushed 3mo ago3 watchersCompare

[ Source](https://github.com/m-vo/contao-group-widget)[ Packagist](https://packagist.org/packages/mvo/contao-group-widget)[ RSS](/packages/mvo-contao-group-widget/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (16)Versions (46)Used By (20)

contao-group-widget
===================

[](#contao-group-widget)

[![Latest version on packagist](https://camo.githubusercontent.com/c7b8033fc510815981725c752e52cc29785d2682bf595974b8bfa63a60657bdd/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d766f2f636f6e74616f2d67726f75702d7769646765742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/mvo/contao-group-widget)

This Contao CMS extension provides an input type `group` that allows repeatable groups of fields in the backend. The resulting data is either stored as a serialized array or in a custom entity relationship (ORM).

[![](docs/widget.png)](docs/widget.png)

#### Design decisions / Limitations

[](#design-decisions--limitations)

The group element widgets are still 'first class citizens' of the respective DCA. Only their definition will be made on the fly. This way we're not messing with the act of rendering and state of the displayed child widgets. As a result, adding new elements via the *plus* button will submit the current DCA form to add the new element.

Visual reordering of elements is done via the CSS `order` property. This way `iframes` can be kept alive (the DOM won't change) which is especially helpful when dealing with components like the `tinyMCE` rich text editor.

Documentation
-------------

[](#documentation)

- [Data definition](docs/data-definition.md)
- Storage backends
    - [Serialized storage](docs/storage/serialized-storage.md) (default)
    - [Entity storage](docs/storage/entity-storage.md)
    - [Extending](docs/storage/extending.md)

TLDR;
-----

[](#tldr)

Just give me an example, ok?

```
$GLOBALS['TL_DCA']['tl_content']['fields']['my_group'] = [
    'inputType' => 'group',
    'palette' => ['amount', 'singleSRC', 'text'],
    'fields' => [
        'amount' => [ // additional field, defined inline
            'inputType' => 'text',
            'eval' => ['tl_class' => 'w50'],
        ],
        '&singleSRC' => [ // let's change some properties of the existing field
            'eval' => ['mandatory' => false],
        ]
    ],

    // force at least 1, at max 5 elements
    'min' => 1,
    'max' => 5,

    // disable ordering (on by default)
    'order' => false,

    // store serialized into a blob (default storage backend)
    'sql' => [
        'type' => 'blob',
        'length' => \Doctrine\DBAL\Platforms\MySQLPlatform::LENGTH_LIMIT_BLOB,
        'notnull' => false,
    ],
];
```

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance80

Actively maintained with recent releases

Popularity44

Moderate usage in the ecosystem

Community33

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 85.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~47 days

Recently: every ~36 days

Total

40

Last Release

109d ago

Major Versions

v0.3 → v1.0.0-beta12021-01-09

### Community

Maintainers

![](https://www.gravatar.com/avatar/ebbd1a2ef505d2afa0c828ea08244e9636e397bc837ec3cf6daa74ff07f08e0b?d=identicon)[m-vo](/maintainers/m-vo)

---

Top Contributors

[![m-vo](https://avatars.githubusercontent.com/u/5305677?v=4)](https://github.com/m-vo "m-vo (153 commits)")[![fritzmg](https://avatars.githubusercontent.com/u/4970961?v=4)](https://github.com/fritzmg "fritzmg (5 commits)")[![bytehead](https://avatars.githubusercontent.com/u/754921?v=4)](https://github.com/bytehead "bytehead (5 commits)")[![Toflar](https://avatars.githubusercontent.com/u/481937?v=4)](https://github.com/Toflar "Toflar (4 commits)")[![richardhj](https://avatars.githubusercontent.com/u/1284725?v=4)](https://github.com/richardhj "richardhj (4 commits)")[![koertho](https://avatars.githubusercontent.com/u/12064642?v=4)](https://github.com/koertho "koertho (2 commits)")[![qzminski](https://avatars.githubusercontent.com/u/193483?v=4)](https://github.com/qzminski "qzminski (2 commits)")[![veronikaplenta](https://avatars.githubusercontent.com/u/88315148?v=4)](https://github.com/veronikaplenta "veronikaplenta (1 commits)")[![rabauss](https://avatars.githubusercontent.com/u/14016098?v=4)](https://github.com/rabauss "rabauss (1 commits)")[![schmidoo](https://avatars.githubusercontent.com/u/60224081?v=4)](https://github.com/schmidoo "schmidoo (1 commits)")[![ausi](https://avatars.githubusercontent.com/u/367169?v=4)](https://github.com/ausi "ausi (1 commits)")

---

Tags

contaowidgetmultidcagrouprepeat

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mvo-contao-group-widget/health.svg)

```
[![Health](https://phpackages.com/badges/mvo-contao-group-widget/health.svg)](https://phpackages.com/packages/mvo-contao-group-widget)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[codefog/contao-haste

haste extension for Contao Open Source CMS

42650.8k139](/packages/codefog-contao-haste)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
