261 lines
10 KiB
YAML
261 lines
10 KiB
YAML
###############################################################
|
||
# Content Blöcke
|
||
###############################################################
|
||
|
||
# Name/URL-Anteil der Kollektion
|
||
name: content
|
||
uploadPath: ../media/content
|
||
|
||
# Metaangaben zur Kollektion welche in der Admin-UI verwendet werden können
|
||
meta:
|
||
# Navigationseintrag in der Admin-UI
|
||
label: { de: "Seiten", en: "Pages" }
|
||
# Icon (Material UI) für den Navigationseintrag
|
||
muiIcon: web
|
||
# Identifizierung eines Eintrags für z.B. Select-Boxen in der Admin-UI
|
||
rowIdentTpl: { twig: "{{ path }}" }
|
||
# Standardsortierung der Liste
|
||
defaultSort: { field: "path", order: "ASC" }
|
||
# Admin-Backend Ansichten
|
||
defaultImageFilter: s
|
||
views:
|
||
# Mobile Darstellung
|
||
- type: simpleList
|
||
mediaQuery: "(max-width:599px)"
|
||
primaryText: path
|
||
columns:
|
||
- source: path
|
||
twig: "{{path}}"
|
||
- source: locale
|
||
type: flag
|
||
# Desktop
|
||
- type: table
|
||
mediaQuery: "(min-width:600px)"
|
||
columns:
|
||
- source: path
|
||
twig: "{{path}}"
|
||
- source: locale
|
||
type: flag
|
||
|
||
tablist:
|
||
meta:
|
||
expand: assignments
|
||
tabs:
|
||
- name: general
|
||
meta:
|
||
label: { de: "Allgemein", en: "General" }
|
||
subFields:
|
||
- source: path
|
||
- source: locale
|
||
- source: tags
|
||
- source: priority
|
||
- name: meta
|
||
meta:
|
||
label: { de: "Meta", en: "Meta" }
|
||
source: meta
|
||
subFields:
|
||
- source: meta
|
||
- name: assignments
|
||
meta:
|
||
label: { de: "Verknüpfungen", en: "Assignments" }
|
||
source: meta
|
||
subFields:
|
||
- source: pages
|
||
- source: linkedArticleEntries
|
||
|
||
imageFilter:
|
||
xs:
|
||
- fit: true
|
||
height: 90
|
||
width: 90
|
||
resampling: "lancos"
|
||
quality: 60
|
||
s:
|
||
- fit: true
|
||
height: 300
|
||
width: 300
|
||
resampling: "lancos"
|
||
quality: 60
|
||
m:
|
||
- fit: true
|
||
height: 600
|
||
width: 600
|
||
resampling: "lancos"
|
||
quality: 60
|
||
l:
|
||
- fit: true
|
||
height: 1200
|
||
width: 1200
|
||
resampling: "lancos"
|
||
quality: 60
|
||
xl:
|
||
- fit: true
|
||
height: 2000
|
||
width: 2000
|
||
resampling: "lancos"
|
||
quality: 60
|
||
|
||
# Zugriff auf diese Kollektion
|
||
permissions:
|
||
# öffentlicher Zugriff
|
||
public:
|
||
methods:
|
||
# Liste und Einzeleinträge lesen
|
||
get: true
|
||
# neuen Eintrag anlegen
|
||
post: false
|
||
# Eintrag editieren
|
||
put: false
|
||
# Eintrag löschen
|
||
delete: false
|
||
# zum Projekt zugeordneter Benutzer ohne Zusatzberechtigungen
|
||
user:
|
||
methods:
|
||
get: true
|
||
post: true
|
||
put: true
|
||
delete: true
|
||
|
||
hooks:
|
||
post:
|
||
return:
|
||
type: javascript
|
||
file: hooks/content/post_return.js
|
||
put:
|
||
return:
|
||
type: javascript
|
||
file: hooks/content/put_return.js
|
||
delete:
|
||
return:
|
||
type: javascript
|
||
file: hooks/content/delete_return.js
|
||
|
||
# Feldliste der Kollektion
|
||
fields:
|
||
- name: path
|
||
type: string
|
||
index: [single, unique]
|
||
meta:
|
||
hideInRoot: true
|
||
label: { de: "Pfad", en: "Path" }
|
||
helperText:
|
||
de: "Der Pfad muss eindeutig sein und ohne ein Slash (/) beginnen und enden."
|
||
en: "The path must be unique and must start and end without a slash (/)."
|
||
- !include fields/_locale.yml
|
||
- name: pages
|
||
type: string[]
|
||
meta:
|
||
hideInRoot: true
|
||
helperText:
|
||
de: "Verknüpft Seiten mit beliebigen anderen Seiten."
|
||
en: "Links the page to any other page."
|
||
widget: chipArray
|
||
label:
|
||
de: Verknüpfung zu Seiten
|
||
en: Assignment to pages
|
||
defaultValue: []
|
||
choices:
|
||
endpoint: "content"
|
||
mapping:
|
||
id: "id"
|
||
name: "path"
|
||
params:
|
||
sort: "path"
|
||
- name: linkedArticleEntries
|
||
type: string[]
|
||
meta:
|
||
hideInRoot: true
|
||
widget: linkedEntries
|
||
helperText:
|
||
de: "Verknüpfte Artikel dieser Seite."
|
||
en: "Linked articles to this page."
|
||
label:
|
||
de: Verknüpfte Artikel
|
||
en: Linked articles
|
||
defaultValue: []
|
||
choices:
|
||
endpoint: "articles"
|
||
params:
|
||
sort: "article.general.publish_date.from"
|
||
filter: { "article.assignments.pages": { source: "path" } }
|
||
template: { twig: "<div>{{ article.content.title }}</div><div>{{ article.general.locale }}</div>" }
|
||
- name: tags
|
||
type: string[]
|
||
meta:
|
||
hideInRoot: true
|
||
helperText:
|
||
de: "Über die Zuweisung von Schlagworten, können Seiten noch einmal genauer kategorisiert werden."
|
||
en: "Pages can be categorized more precisely by assigning keywords."
|
||
widget: chipArray
|
||
label:
|
||
de: Schlagwort / Tag / Label
|
||
en: Kayword / Tag / Label
|
||
addAllowed: true
|
||
choices:
|
||
endpoint: "tags"
|
||
mapping:
|
||
id: "name"
|
||
name: "name"
|
||
params:
|
||
sort: "name"
|
||
- name: priority
|
||
type: number
|
||
meta:
|
||
hideInRoot: true
|
||
defaultValue: [0]
|
||
label: { de: "Priorität", en: "Priority" }
|
||
helperText:
|
||
de: "Sind mehr als ein Stichwort mit einer Seite verknüpft, führt die Priorität (z.B.: eine Zahl von 0..10..x) der gefundenen Seiten zu einer automatischen Vorauswahl aus den gefundenen Seiten."
|
||
en: "If more than one keyword is linked to a page, the priority (e.g. a number 0..10..x) of the pages found leads to an automatic preselection from the pages found."
|
||
# - name: blocks
|
||
# type: object[]
|
||
# meta:
|
||
# label: { de: "Artikel dieser Seite", en: "Page Articles" }
|
||
# collapse: { titleFieldName: "article.content.title" }
|
||
# subFields:
|
||
# - !include fields/_article.yml
|
||
|
||
- name: meta
|
||
type: object
|
||
meta:
|
||
hideInRoot: true
|
||
subFields:
|
||
- name: metaTitle
|
||
type: string
|
||
meta:
|
||
label: { de: "Titel der Webseite", en: "Page Title" }
|
||
- name: metaDescription
|
||
type: string
|
||
meta:
|
||
label: { de: "Beschreibung der Webseite", en: "Page Description" }
|
||
- name: metaTagRobots
|
||
type: string[]
|
||
meta:
|
||
widget: chipArray
|
||
label:
|
||
de: Robots
|
||
en: Robots
|
||
defaultValue: []
|
||
autocomplete: true
|
||
choices:
|
||
- { id: "noindex", name: "noindex" }
|
||
- { id: "index", name: "index" }
|
||
- { id: "follow", name: "follow" }
|
||
- { id: "nofollow", name: "nofollow" }
|
||
- { id: "noimageindex", name: "noimageindex" }
|
||
- { id: "none", name: "none" }
|
||
- { id: "noarchive", name: "noarchive" }
|
||
- { id: "nocache", name: "nocache" }
|
||
- { id: "nosnippet", name: "nosnippet" }
|
||
- { id: "nnavailable_after", name: "nnavailable_after" }
|
||
helperText:
|
||
de: "<strong>Noindex</strong>: Weist eine Suchmaschine an, eine Seite nicht zu indizieren.<br/><strong>index</strong>: Weist eine Suchmaschine an, eine Seite zu indizieren. Beachten Sie, dass Sie dieses Meta-Tag nicht hinzufügen müssen; es ist die Voreinstellung.<br/><strong>follow</strong>: Auch wenn die Seite nicht indexiert ist, sollte der Crawler allen Links auf einer Seite folgen und Eigenkapital an die verlinkten Seiten weitergeben.<br/><strong>nofollow</strong>: Weist einen Crawler an, keinen Links auf einer Seite zu folgen oder Link-Equity weiterzugeben.<br/><strong>noimageindex</strong>: Weist einen Crawler an, keine Bilder auf einer Seite zu indizieren.<br/><strong>none</strong>: Entspricht der gleichzeitigen Verwendung der noindex- und nofollow-Tags.<br/><strong>noarchive</strong>: Suchmaschinen sollten keinen zwischengespeicherten Link zu dieser Seite auf einem SERP anzeigen.<br/><strong>nocache</strong>: Wie noarchive, aber nur von Internet Explorer und Firefox verwendet.<br/><strong>nosnippet</strong>: Weist eine Suchmaschine an, kein Snippet dieser Seite (d. h. Meta-Beschreibung) dieser Seite auf einem SERP anzuzeigen.<br/><strong>nnavailable_after</strong>: Suchmaschinen sollen diese Seite nach einem bestimmten Datum nicht mehr indexieren.<br/>"
|
||
en: "<strong>Noindex</strong>: Tells a search engine not to index a page.<br/><strong>index</strong>: Tells a search engine to index a page. Note that you don’t need to add this meta tag; it’s the default.<br/><strong>follow</strong>: Even if the page isn’t indexed, the crawler should follow all the links on a page and pass equity to the linked pages.<br/><strong>nofollow</strong>: Tells a crawler not to follow any links on a page or pass along any link equity.<br/><strong>noimageindex</strong>: Tells a crawler not to index any images on a page.<br/><strong>none</strong>: Equivalent to using both the noindex and nofollow tags simultaneously.<br/><strong>noarchive</strong>: Search engines should not show a cached link to this page on a SERP.<br/><strong>nocache</strong>: Same as noarchive, but only used by Internet Explorer and Firefox.<br/><strong>nosnippet</strong>: Tells a search engine not to show a snippet of this page (i.e. meta description) of this page on a SERP.<br/><strong>nnavailable_after</strong>: Search engines should no longer index this page after a particular date.<br/>"
|
||
- name: metaKeywords
|
||
type: string
|
||
meta:
|
||
label: { de: "SEO / Schlüsselwörter", en: "SEO / Keywords" }
|
||
helperText:
|
||
de: "Beispiel: Stichwort1, Stichwort2, Stichwort3"
|
||
en: "Example: keyword1, keyword2, keyword3"
|