feat: enhance validation rules and improve content structure across collections

This commit is contained in:
2026-05-17 12:25:28 +00:00
parent 4020ad62c5
commit 819147f518
8 changed files with 184 additions and 26 deletions
+50 -11
View File
@@ -12,7 +12,6 @@ meta:
label: name
secondary: path
tertiary: lang
badge: type
image: _pagebuilderThumbnail
pagebuilder:
screenshot:
@@ -25,11 +24,15 @@ meta:
sidebar:
- group: publishing
label: { de: "Veröffentlichung", en: "Publishing" }
- group: settings
label: { de: "Einstellungen", en: "Settings" }
- group: seo
label: { de: "SEO", en: "SEO" }
hooks:
get:
read:
type: javascript
file: hooks/filter_public.js
permissions:
public:
methods:
@@ -53,11 +56,30 @@ fields:
meta:
label: { de: "Aktiv", en: "Active" }
position: sidebar:publishing
- name: type
type: string
- name: publication
type: object
meta:
label: { de: "Typ", en: "Type" }
position: sidebar:settings
label: { de: "Veröffentlichungszeitraum", en: "Publication window" }
position: sidebar:publishing
drillDown: false
widget: containerLessObject
subFields:
- name: from
type: date
meta:
label: { de: "Von", en: "From" }
widget: datetime
containerProps:
layout:
size: col-6
- name: to
type: date
meta:
label: { de: "Bis", en: "Until" }
widget: datetime
containerProps:
layout:
size: col-6
- name: lang
type: string
meta:
@@ -70,23 +92,40 @@ fields:
position: sidebar:settings
- name: name
type: string
validator:
required: true
meta:
label: { de: "Name", en: "Name" }
helperText:
de: "Eindeutiger Name für diese Seite, z.B. 'Startseite'."
en: "Unique name for this page, e.g. 'Homepage'."
containerProps:
layout:
size: col-6
- name: path
type: string
validator:
pattern: ^\/[a-z0-9\-\/]*$
required: true
meta:
label: { de: "Pfad", en: "Path" }
helperText:
de: "URL-Pfad für diese Seite, z.B. '/ueber-uns'."
en: "URL path for this page, e.g. '/about-us'."
containerProps:
layout:
size: col-6
- name: alternativePaths
type: object[]
meta:
label: { de: "Alternative Pfade", en: "Alternative Paths" }
position: sidebar:seo
widget: containerLessObjectArray
subFields:
- name: path
type: string
- name: teaserText
type: string
meta:
label: { de: "Teasertext", en: "Teaser Text" }
validator:
pattern: ^\/[a-z0-9\-\/]*$
- name: _pagebuilderThumbnail
type: file
meta: