---
title: "Feature: #96659 - ContentObject Registration via service configuration"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:feature-96659"
source: "Changelog/12.0/Feature-96659-ContentObjectRegistrationViaServiceConfiguration.rst"
typo3-version: "12.0"
typo3-major: 12
type: "feature"
issue: 96659
forge: "https://forge.typo3.org/issues/96659"
tags: ["Frontend", "ext:frontend"]
rendered: "2026-09-20T18:31:11+00:00"
---

# Feature: #96659 - ContentObject Registration via service configuration {#feature-96659}

See [forge#96659](https://forge.typo3.org/issues/96659)

## Description {#description}

ContentObjects such as `TEXT` or `COA` for rendering content blocks in TYPO3
Frontend via TypoScript are now registered via the service configuration.

This way registration is done during build-time and not on every TYPO3 request
and dependency injection can be used in ContentObjects.

The registration was previously done in an extension's `ext_localconf.php`
via `$GLOBALS['TYPO3_CONF_VARS']['FE']['ContentObjects']`.

## Impact {#impact}

Registering a custom ContentObject is now done in an extension's
`Configuration/Services.yaml`:

```yaml
MyCompany\MyPackage\ContentObject\CustomContentObject:
    tags:
        - name: frontend.contentobject
          identifier: 'MY_OBJ'
```
