---
title: "Extending Field Type Lists in the FormNormalizer (Form Framework)"
manual: "mosparo integration for EXT:form and Extbase-based forms"
version: "1.1"
permalink: "https://docs.typo3.org/permalink/denkwerk/mosparo-form:extending-field-type-lists-form-framework@1.1"
source: "Configuration/ExtendIgnore-feldslist.rst"
rendered: "2026-11-11T13:09:55+00:00"
---

# Extending Field Type Lists in the FormNormalizer (Form Framework) {#extending-field-type-lists-form-framework}

This extension provides a FormNormalizer for the TYPO3 Form Framework that helps with processing submitted form data.
It allows specific field types to be ignored or verified during validation.

If you are using custom form field types, you need to register them via the event `\Denkwerk\MosparoForm\Event\ModifyFormFieldTypeListsEvent` to ensure proper validation behavior.

-   [ModifyFormFieldTypeListsEvent](https://docs.typo3.org/permalink/denkwerk/mosparo-form:modifyformfieldtypelistsevent@1.1)
-   [Adding your own Event Listener](https://docs.typo3.org/permalink/denkwerk/mosparo-form:adding-your-own-event-listener@1.1)

> [!NOTE]
> **See also**
>
> For details on how mosparo expects form data, see the official documentation:\
> [https://documentation.mosparo.io/docs/integration/custom#preparing-form-data](https://documentation.mosparo.io/docs/integration/custom#preparing-form-data)

> [!NOTE]
> If you are using Extbase-based forms, this event is not needed.\
> In Extbase, you manually define which fields are passed to the validator, and control validation behavior via its options.\
> For detailed instructions on integrating mosparo with Extbase-based forms (\<f:form>), see the corresponding documentation section: [How to use (Extbase forms \<f:form>)](https://docs.typo3.org/permalink/denkwerk/mosparo-form:how-to-use-form-extbase@1.1).

## ModifyFormFieldTypeListsEvent {#extending-field-type-lists-form-framework-event}

This event is triggered when the FormNormalizer is instantiated.

You can use this event to:

-   **getIgnoredFieldTypes() / setIgnoredFieldTypes()**

    -   *Type:* array of strings

    Add field types to the ignore list

-   **getVerifiableFieldTypes() / setVerifiableFieldTypes()**

    -   *Type:* array of strings

    Add field types to the verifiable list

## Adding your own Event Listener {#extending-field-type-lists-form-framework-custom}

To register your own field types for the FormNormalizer, follow these steps:

1.  In your custom provider extension, create a new PHP file at: `Classes/EventListener/ModifyFormFieldTypesForFormListener.php`
1.  Add the following implementation.\
    This example adds custom field types to both the ignored and verifiable lists:

    **EXT:site_package/Classes/EventListener/ModifyFormFieldTypesForFormListener.php**

    ```php
    namespace Vendor\MyExtension\EventListener;

    use Denkwerk\MosparoForm\Event\ModifyFormFieldTypeListsEvent;

    final class ModifyFormFieldTypesForFormListener
    {
        public function __invoke(ModifyFormFieldTypeListsEvent $event): void
        {
            // Add custom field types to the ignore list
            $ignored = $event->getIgnoredFieldTypes();
            $ignored[] = 'customFormElementToIgnore';
            $event->setIgnoredFieldTypes($ignored);

            // Add custom field types to the verifiable list
            $verifiable = $event->getVerifiableFieldTypes();
            $verifiable[] = 'customFormInputElement';
            $event->setVerifiableFieldTypes($verifiable);
        }
    }
    ```
1.  Register the listener in your custom provider extension [Services.yaml](https://docs.typo3.org/m/typo3/reference-coreapi/14.3/en-us/ExtensionArchitecture/FileStructure/Configuration/ServicesYaml.html#extension-configuration-services-yaml):

    **EXT:site_package/Configuration/service.yaml**

    ```yaml
    ...

    services:
      Vendor\MyExtension\EventListener\ModifyFormFieldTypesForFormListener:
        tags:
          - name: event.listener
            event: Denkwerk\MosparoForm\Event\ModifyFormFieldTypeListsEvent
    ```
