---
title: "Breaking: #98455 - Changed definition of FormEngine suggest item"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-98455-1664350742"
source: "Changelog/12.0/Breaking-98455-ChangedDefinitionOfFormEngineSuggestItem.rst"
typo3-version: "12.0"
typo3-major: 12
type: "breaking"
issue: 98455
forge: "https://forge.typo3.org/issues/98455"
tags: ["Backend", "PHP-API", "NotScanned", "ext:backend"]
rendered: "2026-10-01T19:27:47+00:00"
---

# Breaking: #98455 - Changed definition of FormEngine suggest item {#breaking-98455-1664350742}

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

## Description {#description}

The definition of an item used in the FormEngine auto-suggest list has changed.
The following properties are unused now and were therefore removed:

-   `text` \- contained a pre-composed text including markup rendered in an result
    item
-   `style` \- was unused already
-   `class` \- was unused already
-   `sprite` \- contained a pre-composed markup of the icon being rendered

The property `icon` is added and is an array containing the `identifier` of an
icon and optionally an `overlay` identifier.

Example:

```php
$icon = $this->iconFactory->getIconForRecord($this->table, $row, Icon::SIZE_SMALL);
$entry = [
    // ...
    'icon' => [
        'identifier' => $icon->getIdentifier(),
        'overlay' => $icon->getOverlayIcon()?->getIdentifier(),
    ],
];
```

## Impact {#impact}

The removed properties `text`, `style`, `class`, and `sprite` are ignored if
still supplied by custom suggest wizards. Also, the `icon` property must be provided.

The removed property `text` also affects potential `renderFunc` callbacks
configured in the field's TCA.

## Affected installations {#affected-installations}

All extensions having a custom suggest wizard or providing a  `renderFunc`
are affected.

## Migration {#migration}

Albeit rarely used, custom suggest wizards need to adjust the suggest items in
their `queryTable()` method. Potential render methods defined in the TCA
field's `renderFunc` config may not manipulate an entry's `text` property.
