PHPackages                             erdnaxelaweb/contentadditionalinformations - 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. [Database &amp; ORM](/categories/database)
4. /
5. erdnaxelaweb/contentadditionalinformations

ActiveIbexa-bundle[Database &amp; ORM](/categories/database)

erdnaxelaweb/contentadditionalinformations
==========================================

Add a service to manage content related additional informations in the DB.

v1.0.1(4mo ago)054↓50%MITPHPPHP ^8.1

Since Dec 15Pushed 4mo agoCompare

[ Source](https://github.com/erdnaxelaweb/contentadditionalinformations)[ Packagist](https://packagist.org/packages/erdnaxelaweb/contentadditionalinformations)[ RSS](/packages/erdnaxelaweb-contentadditionalinformations/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (3)Used By (0)

Content Additional Informations Bundle
======================================

[](#content-additional-informations-bundle)

Add a service to manage per‑content, per‑version additional informations in the database for Ibexa DXP (Symfony).

This repository provides:

- A Symfony bundle exposing a `ContentAdditionalInformationsService` to get/set/list/delete additional information entries for an Ibexa Content.
- A Doctrine DBAL gateway and persistence handler, with a cache layer built using Ibexa persistence cache.
- An event subscriber that keeps additional informations in sync when content is drafted, copied, or deleted.

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

[](#requirements)

- PHP 8.1+
- An Ibexa DXP installation (v4.x)

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

[](#installation)

1. Require the package in your Ibexa/Symfony project:

```
composer require erdnaxelaweb/contentadditionalinformations

```

2. Register the bundle (if not using Flex auto‑registration):

```
// config/bundles.php
return [
    // ...
    ErdnaxelaWeb\ContentAdditionalInformationsBundle\ContentAdditionalInformationsBundle::class => ['all' => true],
];

```

3. Configure Ibexa ORM mapping is auto‑prepended by the bundle extension, pointing to the `lib` namespace with Doctrine annotations. No manual config should be necessary.

### Database schema

[](#database-schema)

The table creation can be handled using the doctrine schema update command:

```
bin/console d:s:u --dump-sql --em=ibexa_default

```

Usage
-----

[](#usage)

Inject and use the service `ErdnaxelaWeb\ContentAdditionalInformations\Service\ContentAdditionalInformationsService` in your application code.

Public API (from `lib/Service/ContentAdditionalInformationsService.php`):

- `get(int $contentId, int $contentVersionNo, string $identifier): ContentAdditionalInformation`
- `getAll(int $contentId, int $contentVersionNo): ContentAdditionalInformation[]`
- `set(int $contentId, int $contentVersionNo, string $identifier, mixed $value): void`
- `delete(int $contentId, int $contentVersionNo, ?string $identifier = null): void` (deletes one or all identifiers for that content/version)
- `purge(int[] $contentIds): void` (bulk delete across all versions)

Notes:

- Values are stored as JSON (encoded/decoded automatically by the persistence handler).
- A cache layer wraps the persistence handler using Ibexa’s `AbstractInMemoryHandler`.

### Event subscriber behavior

[](#event-subscriber-behavior)

`ErdnaxelaWeb\ContentAdditionalInformations\Event\Subscriber\ContentEventSubscriber` subscribes to Ibexa repository events to keep entries consistent:

- On `CreateContentDraftEvent`: copies existing entries from the current version to the new draft version.
- On `CopyContentEvent`: copies entries from source content current version to the newly created content.
- On `DeleteVersionEvent`: deletes entries for the deleted version.
- On `DeleteTrashItemEvent` and `EmptyTrashEvent`: purges entries for affected content IDs (in chunks of 200 for EmptyTrash).
-

License
-------

[](#license)

MIT — see [`LICENSE`](./LICENSE).

###  Health Score

37

—

LowBetter than 82% of packages

Maintenance80

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor1

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

Total

2

Last Release

138d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5da828a6299f556552632c81712f10e70c905b2e1560b1a7044eb7e590287179?d=identicon)[florianalexandre](/maintainers/florianalexandre)

---

Top Contributors

[![erdnaxelaweb](https://avatars.githubusercontent.com/u/2130120?v=4)](https://github.com/erdnaxelaweb "erdnaxelaweb (2 commits)")

---

Tags

symfonyibexa

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleECS

Type Coverage Yes

### Embed Badge

![Health badge](/badges/erdnaxelaweb-contentadditionalinformations/health.svg)

```
[![Health](https://phpackages.com/badges/erdnaxelaweb-contentadditionalinformations/health.svg)](https://phpackages.com/packages/erdnaxelaweb-contentadditionalinformations)
```

###  Alternatives

[ambta/doctrine-encrypt-bundle

Symfony 2 bundle which allows to encrypt data in database with some encrypt algorithm

77275.7k](/packages/ambta-doctrine-encrypt-bundle)[prezent/doctrine-translatable-bundle

Integrate the doctrine-translatable extension in Symfony

14698.4k5](/packages/prezent-doctrine-translatable-bundle)[ao/translation-bundle

Doctrine as symfony translation provider + a nice gui for editing translations.

243.7k](/packages/ao-translation-bundle)

PHPackages © 2026

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