PHPackages                             onesandzerostechnology/gridfield-bulk-editing-tools - 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. [File &amp; Storage](/categories/file-storage)
4. /
5. onesandzerostechnology/gridfield-bulk-editing-tools

ActiveSilverstripe-vendormodule[File &amp; Storage](/categories/file-storage)

onesandzerostechnology/gridfield-bulk-editing-tools
===================================================

SilverStripe GridField component to upload images/files and edit records in bulk

v2.1.12(7y ago)025BSD-3-ClausePHP

Since Apr 4Pushed 7y agoCompare

[ Source](https://github.com/OnesandZerosTechnology/GridFieldBulkEditingTools)[ Packagist](https://packagist.org/packages/onesandzerostechnology/gridfield-bulk-editing-tools)[ Docs](https://github.com/colymba/GridFieldBulkEditingTools)[ RSS](/packages/onesandzerostechnology-gridfield-bulk-editing-tools/feed)WikiDiscussions master Synced today

READMEChangelog (2)Dependencies (1)Versions (26)Used By (0)

GridField Bulk Editing Tools
============================

[](#gridfield-bulk-editing-tools)

[![Latest Stable Version](https://camo.githubusercontent.com/9eb016cd34117b542e03d6cb811859e7f4b4e4f8831e561bfe68cbbb02813de0/68747470733a2f2f706f7365722e707567782e6f72672f636f6c796d62612f677269646669656c642d62756c6b2d65646974696e672d746f6f6c732f762f737461626c652e737667)](https://github.com/colymba/GridFieldBulkEditingTools/releases)[![Latest Unstable Version](https://camo.githubusercontent.com/95ff6452ddead9c4168f9e4ff97c53b8b3f9fabf4fe79512e71684bd23e4c971/68747470733a2f2f706f7365722e707567782e6f72672f636f6c796d62612f677269646669656c642d62756c6b2d65646974696e672d746f6f6c732f762f756e737461626c652e737667)](https://github.com/colymba/GridFieldBulkEditingTools/tree/master)[![License](https://camo.githubusercontent.com/045efe1ed28953991eeb6a6f496449087af52f9923e34bb7b99a858418cf6575/68747470733a2f2f706f7365722e707567782e6f72672f636f6c796d62612f677269646669656c642d62756c6b2d65646974696e672d746f6f6c732f6c6963656e73652e737667)](#license-and-copyright)

Set of SilverStripe 4 GridField components to facilitate bulk file upload &amp; record editing.

Components:
-----------

[](#components)

- [Bulk Upload](#bulk-upload): Upload multiple images or files at once into DataObjects
- [Bulk Manager](#bulk-manager): Delete, Unlink, Edit (and more) multiple records at once

Requirements
------------

[](#requirements)

- SilverStripe 4.0 (master / 3.+)
- SilverStripe 3.1 (version 2.+ / 1.+)
- Silverstripe 3.0 (version 0.5)

Installation
------------

[](#installation)

`composer require colymba/gridfield-bulk-editing-tools`

3.0.0 deprecations
------------------

[](#300-deprecations)

The 3.x versions of this module require SilverStripe 4.x+, and PHP 5.5 or above:

- Namespaces are implemented, and some class names have changed (see `.upgrade.yml` for mapping)

2.0.0 deprecations
------------------

[](#200-deprecations)

Major deprections in latest 2.0.0 release:

- The `GridFieldBulkImageUpload` has been renamed to `GridFieldBulkUpload`.
- `onBulkImageUpload` callback has been renamed to `onBulkUpload`

Bulk Upload
-----------

[](#bulk-upload)

Upload multiple images or files at once into DataObjects. Perfect for galleries and the like.

```
$config->addComponent(new \Colymba\BulkUpload\BulkUploader());
```

### Versioned

[](#versioned)

By default `BulkUploader` will write to the current stage (most likely Draft). To auto publish your `DataObject`, use the following param or config:

```
$config->addComponent(new \Colymba\BulkUpload\BulkUploader(null, null, true));
```

OR

```
$config->getComponentByType('Colymba\\BulkUpload\\BulkUploader')->setAutoPublishDataObject(true);
```

Your `DataObject` should `own` the `Image`/`File` relation so it is published at the same time: [See SilverStripe DataObject ownership DOC](https://github.com/silverstripe/silverstripe-framework/blob/4.0/docs/en/02_Developer_Guides/00_Model/10_Versioning.md#dataobject-ownership)

See [BULK\_UPLOAD.md](docs/en/BULK_UPLOAD.md) for detailed configuration.

Bulk Manager
------------

[](#bulk-manager)

Perform actions on multiple records straight from the GridField

```
$config->addComponent(new \Colymba\BulkManager\BulkManager());
```

See [BULK\_MANAGER.md](docs/en//BULK_MANAGER.md) for detailed configuration.

Tooling
-------

[](#tooling)

- `npm run watch` for development
- `npm run dist` before pushing to the repo

Translations
------------

[](#translations)

Translations of the natural language strings are managed through a third party translation interface, transifex.com.

Please use  to contribute translations, rather than sending pull requests with YAML/JS files.

License and Copyright
---------------------

[](#license-and-copyright)

[BSD 3-clause license](LICENSE)

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity73

Established project with proven stability

 Bus Factor1

Top contributor holds 87.1% 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 ~88 days

Recently: every ~81 days

Total

25

Last Release

2664d ago

Major Versions

v0.5.0 → v1.0.02013-04-16

v1.6.0 → v2.0.02014-05-12

v2.1.10 → 3.0.0-beta12018-02-24

### Community

Maintainers

![](https://www.gravatar.com/avatar/3cd2bc9f380b26c85cd03c4eb7b1ef7cfd99f3d9ebd0b58aebd8f0901627459b?d=identicon)[robbonz](/maintainers/robbonz)

---

Top Contributors

[![colymba](https://avatars.githubusercontent.com/u/978040?v=4)](https://github.com/colymba "colymba (256 commits)")[![robbieaverill](https://avatars.githubusercontent.com/u/5170590?v=4)](https://github.com/robbieaverill "robbieaverill (8 commits)")[![axllent](https://avatars.githubusercontent.com/u/1463435?v=4)](https://github.com/axllent "axllent (3 commits)")[![tractorcow](https://avatars.githubusercontent.com/u/936064?v=4)](https://github.com/tractorcow "tractorcow (2 commits)")[![christopherdarling](https://avatars.githubusercontent.com/u/178039?v=4)](https://github.com/christopherdarling "christopherdarling (2 commits)")[![wernerkrauss](https://avatars.githubusercontent.com/u/1043925?v=4)](https://github.com/wernerkrauss "wernerkrauss (2 commits)")[![purplespider](https://avatars.githubusercontent.com/u/329880?v=4)](https://github.com/purplespider "purplespider (2 commits)")[![mellm0](https://avatars.githubusercontent.com/u/229937?v=4)](https://github.com/mellm0 "mellm0 (2 commits)")[![MarcusDalgren](https://avatars.githubusercontent.com/u/324255?v=4)](https://github.com/MarcusDalgren "MarcusDalgren (1 commits)")[![a2nt](https://avatars.githubusercontent.com/u/672794?v=4)](https://github.com/a2nt "a2nt (1 commits)")[![MattyBalaam](https://avatars.githubusercontent.com/u/1246923?v=4)](https://github.com/MattyBalaam "MattyBalaam (1 commits)")[![mlewis-everley](https://avatars.githubusercontent.com/u/687143?v=4)](https://github.com/mlewis-everley "mlewis-everley (1 commits)")[![nedmas](https://avatars.githubusercontent.com/u/842280?v=4)](https://github.com/nedmas "nedmas (1 commits)")[![phillprice](https://avatars.githubusercontent.com/u/320214?v=4)](https://github.com/phillprice "phillprice (1 commits)")[![simonwelsh](https://avatars.githubusercontent.com/u/125915?v=4)](https://github.com/simonwelsh "simonwelsh (1 commits)")[![steffen-maass](https://avatars.githubusercontent.com/u/1007058?v=4)](https://github.com/steffen-maass "steffen-maass (1 commits)")[![TheBnl](https://avatars.githubusercontent.com/u/1334195?v=4)](https://github.com/TheBnl "TheBnl (1 commits)")[![martinduparc](https://avatars.githubusercontent.com/u/839534?v=4)](https://github.com/martinduparc "martinduparc (1 commits)")[![bilekt3](https://avatars.githubusercontent.com/u/381740?v=4)](https://github.com/bilekt3 "bilekt3 (1 commits)")[![chloehjung15](https://avatars.githubusercontent.com/u/73510449?v=4)](https://github.com/chloehjung15 "chloehjung15 (1 commits)")

---

Tags

silverstripeImage uploadbulk uploadgridfield bulk upload

### Embed Badge

![Health badge](/badges/onesandzerostechnology-gridfield-bulk-editing-tools/health.svg)

```
[![Health](https://phpackages.com/badges/onesandzerostechnology-gridfield-bulk-editing-tools/health.svg)](https://phpackages.com/packages/onesandzerostechnology-gridfield-bulk-editing-tools)
```

###  Alternatives

[colymba/gridfield-bulk-editing-tools

Silverstripe CMS GridField component to upload images/files and edit records in bulk

94677.2k39](/packages/colymba-gridfield-bulk-editing-tools)[bummzack/sortablefile

An extension for SilverStripe that adds sorting to UploadField.

70622.7k55](/packages/bummzack-sortablefile)[unclecheese/dropzone

An HTML5 upload field for the CMS and frontend forms.

46130.7k6](/packages/unclecheese-dropzone)[silverstripe/s3

Adds SilverStripe support for using the S3 adapter for Flysystem

20297.0k1](/packages/silverstripe-s3)[silverstripe/selectupload

Enables files to be uploaded into a user-designated folder

2779.1k1](/packages/silverstripe-selectupload)[axllent/silverstripe-scaled-uploads

Automatically scale down and rotate uploaded images for Silverstripe

2580.3k8](/packages/axllent-silverstripe-scaled-uploads)

PHPackages © 2026

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