# Faymax Schema Manager 1.4.7

Dieses Plugin gibt URL abhaengige JSON LD Schema Bloecke in JTL Shop 5 aus. Es eignet sich fuer Landingpages, Leistungsseiten, FAQ Inhalte, Breadcrumbs oder andere strukturierte Daten, wenn diese nicht direkt im Template gepflegt werden sollen.

## Wichtige Hinweise

- Das Plugin erzeugt nur die technische JSON LD Ausgabe.
- Die inhaltliche Richtigkeit der strukturierten Daten muss selbst geprueft werden.
- FAQ Schema sollte nur verwendet werden, wenn die Fragen und Antworten auch sichtbar auf der Seite stehen.
- Doppelte oder widerspruechliche strukturierte Daten sollten vermieden werden.
- Vor dem Einsatz im Liveshop bitte in einer Testumgebung pruefen.

## Backend

Nach der Installation finden Sie im Plugin beim Plugin Manager den Tab:

Schema Manager

Dort koennen mehrere Regeln gepflegt werden:

- aktiv oder inaktiv
- Key fuer die Script ID
- URL
- Match Typ: equals, contains oder regex
- JSON LD Block

Der script Tag wird automatisch erzeugt. Im Feld wird nur reines JSON eingefuegt.

## Match Typen

### equals

Die Regel gilt nur fuer die exakt angegebene URL, zum Beispiel:

/leistungen/jtl-shop-erstellung

### contains

Die Regel gilt, wenn der angegebene URL Teil enthalten ist. Diese Option vorsichtig verwenden.

### regex

Die Regel nutzt einen regulaeren Ausdruck. Diese Option ist nur fuer erfahrene Anwender gedacht.

## Frontend Ausgabe

Das Plugin nutzt HOOK_SMARTY_OUTPUTFILTER mit ID 140 und fuegt passende JSON LD Bloecke vor dem schliessenden head Tag ein. Wenn kein head Tag gefunden wird, erfolgt ein Fallback vor dem schliessenden body Tag.

## Aenderungen in 1.4.1

- Ausgabe nicht mehr von pq() abhaengig
- robustere Einfuegung per String Output Filter
- bessere URL Erkennung bei Shops in Unterordnern
- neutrale leere Beispielkonfiguration statt festem Faymax Schema
- eigener Faymax Support Tab mit klickbaren Kontaktlinks
- MaxShopVersion ergaenzt

## Support

Dieses Plugin wird kostenlos von Faymax Consulting bereitgestellt. Individuelle Hilfe bei Schema.org, JSON LD, SEO Pruefung oder Anpassung kann kostenpflichtig beauftragt werden.


## Updateverhalten

Ab Version 1.4.2 werden die gepflegten Schema Regeln updatefest unter `mediafiles/faymax_schema_manager/schema_blocks.json` gespeichert. Dadurch bleiben die Daten bei normalen Plugin Updates erhalten. Beim ersten Aufruf migriert das Plugin vorhandene Daten aus der alten Datei `config/schema_blocks.json`, sofern noch keine neue Datei vorhanden ist.

Vor Updates sollte trotzdem ein Backup erstellt werden, besonders wenn viele strukturierte Daten gepflegt wurden.


Version 1.4.6: Ergaenzt einen fruehen Output Buffer ueber HOOK_GLOBALINCLUDE_INC 131. Dadurch wird JSON LD auch dann in das finale HTML injiziert, wenn HOOK_SMARTY_OUTPUTFILTER 140 auf einzelnen Seiten oder Template Konstellationen nicht greift.


Version 1.4.6: JSON LD Ausgabe wird nicht mehr als Body Fallback im Outputfilter eingefuegt. Wenn der Head im Outputfilter nicht erreichbar ist, uebernimmt der Output Buffer die saubere Ausgabe vor </head>. Andere JSON LD Bloecke des Shops blockieren die Faymax Ausgabe nicht mehr.


Version 1.4.7: Backend Usability grundlegend verbessert. Neue Eintraege werden oben erstellt, vorhandene Eintraege sind als kompakte Karten einklappbar, Suche und Schnellaktionen wurden ergaenzt. Zusaetzlich wurde ein CSRF Schutz fuer das Speichern eingebaut und Regex Regeln werden beim Speichern validiert.
