Wie definiert man "Custom Fields" in einem Theme ein?

Hallo zusammen,

ich habe bisher nicht viel Erfahrung mit der Entwicklung von Showpare 6 Themes und Plugins. Derzeit probiere ich, mein erstes Theme umzusetzen.

Das Problem:
Ich möchte gerne „Custom Fields“ in meinem Theme definieren. Bedeutet, dass bei der Installation des Themes das Set und die benötigten „Custom Fields“ automatisch hinzugefügt werden sollen, anstatt diese händisch über die Einstellungen anzulegen. Bei dem „Custom Field“ handelt es sich „nur“ um Text, welcher bei jeder Kategorie angezeigt und nach Initialisierung im Frontend ausgegeben werden soll.

Ist es möglich, „Custom Fields“ in Themes zu definieren oder muss ich dafür ein Plugin erstellen (manifest.xml)?

Viele Grüße
Lutz

Ich habe unsere in der ThemeInterface Datei direkt unter src/ eingebaut.
Dort gibt es die Methoden install und update welche dann beim installieren oder updaten des Theme aufgerufen werden.

$customFieldSetRepository = $this->container->get('custom_field_set.repository');
        $customFieldSetRepository->upsert([
            [
                'name' => 'GRUPPENNAME',
                'config' => [
                    'label' => [
                        'de-DE' => 'LABELTXT',
                        'en-GB' => 'LABELTXT'
                    ]
                ],
                'customFields' => [
                    [
                        'name' => 'FELDNAME',
                        'type' => CustomFieldTypes::TEXT,
                        'config' => [
                            'label' => [
                                'de-DE' => 'FELDLABEL',
                                'en-GB' => 'FELDLABEL'
                            ],
                            'componentName' => "sw-field",
                            'customFieldType' => "text",
                            'customFieldPosition' => "1"
                        ]
                    ],
                ]
            ]
        ]);

Aber was spricht dagegen in dem Theme ein manifest anzulegen