# --------------------------------------------------------------- # Pages Collection # --------------------------------------------------------------- - name: page label: 🏩 Pages label_singular: 🏩 Page description: "Landing Pages" folder: "src/content/page" slug: "" preview_path: /{{url}}/ create: true delete: true editor: preview: false summary: "🏩 Title '{{title}}' Url: '{{url}}' " sortable_fields: ["url", "title", "order"] view_filters: - label: collection field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tags field: tags nested: depth: 1 summary: "{{title}}" fields: - label: "title" name: "title" widget: "string" required: true - label: "url" name: "url" widget: "string" required: true - label: "πŸ“· Image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false media_library: config: multiple: true media_folder: "src/content/upload/" - label: "alt" name: "alt" widget: "string" required: false hint: alt text - label: "Photo Credit" name: "photocredit" widget: "string" required: false hint: alt text - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false # COMPONENETS - label: 'πŸ‘· Components (Pagebuilder)' label_singular: 'πŸ‘· Component' name: 'components' widget: 'list' add_to_top: true collapsed: true types: - label: '🧾 Text Markdown' name: 'text' widget: object summary: " || {{fields.template}}" fields: - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateText searchFields: [title] valueField: "components/text/{{filename}}.{{extension}}" displayFields: ["components/text/{{filename}}.{{extension}}"] required: true default: "components/text/text.liquid" - label: 'πŸŒ‰ Image & Text' name: 'image' widget: object summary: " || {{fields.template}}" fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - { label: Image, name: image, widget: image, choose_url: true,required: false } - { label: alt, name: alt, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImage searchFields: [title] valueField: "components/image/{{filename}}.{{extension}}" displayFields: ["components/image/{{filename}}.{{extension}}"] required: true default: "components/image/image.liquid" - label: 'πŸŒ‡ πŸŒ‰Image Gallery' name: 'images' widget: object summary: ' || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - label: Images name: images widget: list add_to_top: true fields: - { label: Image, name: image, widget: image, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImages searchFields: [title] valueField: "components/images/{{filename}}.{{extension}}" displayFields: ["components/images/{{filename}}.{{extension}}"] required: true default: "components/images/images.liquid" - name: cta label: πŸ“£ CTA widget: object summary: "{{fields.image}} {{fields.teaser}}" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "ctalink", name: "url", widget: "string", required: false } - { label: "cta text", name: "cta", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Image alt", name: "alt", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCta searchFields: [title] valueField: "components/cta/{{filename}}.{{extension}}" displayFields: ["components/cta/{{filename}}.{{extension}}"] required: true default: "components/cta/cta.liquid" - name: testamonials label: πŸ’¬ Testamonials widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Testamonial name: testamonial widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: Image, name: image, widget: "image", required: false, choose_url: true } - { label: Person, name: person, widget: string, required: false } - { label: Person title, name: persontitle, widget: string, required: false } - { label: url, name: url, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateTestamonial searchFields: [title] valueField: "components/testamonial/{{filename}}.{{extension}}" displayFields: ["components/testamonial/{{filename}}.{{extension}}"] required: true default: "components/testamonial/testamonial.liquid" - name: "calendar" label: "πŸ“† Calendar / Event" widget: object summary: '{{fields.date_start}} - {{fields.date_start}} || {{fields.template}}' fields: - label: "Calendar start" name: "date_start" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true required: false - label: "Calendar end" name: "date_end" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: false required: false - label: "Calendar All Day" name: "date_allday" widget: "boolean" default: false required: false - name: "template" label: "Template" widget: relation collection: componentTemplateCalendar searchFields: [title] valueField: "components/calendar/{{filename}}.{{extension}}" displayFields: ["components/calendar/{{filename}}.{{extension}}"] required: true default: "components/calendar/calendar.liquid" - name: "Address" label: "πŸ—Ί Address" widget: object summary: '{{fields.title}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Address name: address summary: '{{fields.name}} {{fields.street}} {{fields.zip}} {{fields.country}} {{fields.website}} {{fields.email}}' widget: list add_to_top: true fields: - { label: name, name: name, widget: string, required: false } - { label: street, name: street, widget: string, required: false } - { label: zip, name: zip, widget: string, required: false } - { label: country, name: country, widget: string, required: false } - { label: Locality, name: locality, widget: string, required: false } - { label: phone, name: phone, widget: string,required: false } - { label: url, name: url, widget: string, default:"https://",required: false } - { label: email, name: email, widget: string, default:"email@domaine.com",required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateAddress searchFields: [title] valueField: "components/address/{{filename}}.{{extension}}" displayFields: ["components/address/{{filename}}.{{extension}}"] required: true default: "components/address/address.liquid" - name: "download" label: "‡️ Download" widget: object summary: '{{fields.files.file }} || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Files name: files widget: list add_to_top: true fields: - { label: file, name: file, widget: file, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateDownload searchFields: [title] valueField: "components/download/{{filename}}.{{extension}}" displayFields: ["components/download/{{filename}}.{{extension}}"] required: true default: "components/download/download.liquid" - name: price label: πŸ’Ά Price Table widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: price name: price widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: Price, name: price, widget: string, required: false } - { label: featured, name: featured, widget: boolean, default: false, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: "url", name: "url", widget: "string", required: false } - label: elements name: elements widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: active, name: active, widget: boolean, default: true, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplatePrice searchFields: [title] valueField: "components/price/{{filename}}.{{extension}}" displayFields: ["components/price/{{filename}}.{{extension}}"] required: true default: "components/price/price.liquid" - name: links label: πŸ”— Links widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: links name: link widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - {label: link, name: url, widget: string, default: "https://"} - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateLink searchFields: [title] valueField: "components/link/{{filename}}.{{extension}}" displayFields: ["components/link/{{filename}}.{{extension}}"] required: true default: "components/link/link.liquid" - label: ' πŸ’Œ Form' name: 'form' widget: object summary: ' || ' fields: - { label: title, name: title, widget: string, default: '', required: false } - { label: Form name, name: name, widget: string, default: 'formname', required: true, hint: "Used as the forms name make it unique" } - { label: action url, name: action, widget: string, default: '/submitted', required: true, hint: "Link to the url the form goes to after submit" } - label: Form elements name: elements widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true types: - label: "Input : text, tel, phone, url" name: text widget: list fields: - { label: inputtype, name: inputtype, widget: select, options: ["text", "email", "tel", "url","date"], default: text } - { label: title, name: title, widget: string, required: true } - { label: placeholder, name: placeholder, widget: string, required: false } - { label: required, name: required, widget: boolean, default: false, required: false } - label: Textarea name: textarea widget: list fields: - { label: title, name: title, widget: string, required: true, default: Message } - { label: required, name: required, widget: boolean, default: false, required: false } - label: "Options: Dropdown / Checkbox / Radio" name: options widget: list fields: - { label: title, name: title, widget: string, required: true } - { label: "Option type", name: inputtype, widget: select, options: ["Dropdown", "Radio", "Checkbox"], default: Dropdown } - { label: required, name: required, widget: boolean, default: false, required: false } - label: option name: option widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true fields: - { label: title, name: title, widget: string, required: true } - { label: "checked/selected", name: checked, widget: boolean, default: false, required: false } - label: Button name: button widget: list fields: - { label: "Submit Title", name: title, widget: string, required: true, default: "Send" } - { label: "Reset button", name: reset, widget: boolean, required: false } - { label: "Reset title", name: resettitle, widget: string, required: false, default: "Reset" } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateForm searchFields: [title] valueField: "components/form/{{filename}}.{{extension}}" displayFields: ["components/form/{{filename}}.{{extension}}"] required: true default: "components/form/form.liquid" - label: 'πŸ—‚ Collection' name: 'collection' widget: object summary: '{{fields.collection}} Order by {{fields.order}} Reverse: {{fields.reverse}} Size: {{fields.size}} | 🎨: {{fields.template}}' fields: - name: collection label: collection widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] multiple: false hint: "Select the tag for the collection" - { label: order, name: order, widget: select, options: ['date','data.title', 'data.order'], default: 'date', required: false, hint: "select the data field for ordering" } - { label: reverse, name: reverse, widget: boolean, required: false, hint: "Reverse the order" } - { label: size, name: size, widget: number, default: '10', min: 1, required: false } - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCollection searchFields: [title] valueField: "components/collection/{{filename}}.{{extension}}" displayFields: ["components/collection/{{filename}}.{{extension}}"] required: true default: "components/collection/collection.liquid" - name: "pagecard" label: "πŸ“‘ Cards Page" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: page label: Related Pages widget: relation collection: page searchFields: [title] valueField: "{{url}}" displayFields: ["url: {{url}} - Title: {{title}}"] required: false multiple: true - name: "template" label: "Template" widget: relation collection: componentTemplatePagecard searchFields: [title] valueField: "components/pagecard/{{filename}}.{{extension}}" displayFields: ["components/pagecard/{{filename}}.{{extension}}"] required: true default: "components/pagecard/pagecard.liquid" - name: "njktemplate" label: "πŸ€– Template" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: "template" label: "Template" widget: relation collection: componentTemplateTemplates searchFields: [title] valueField: "components/templates/{{filename}}.{{extension}}" displayFields: ["components/templates/{{filename}}.{{extension}}"] required: true default: "components/templates/default.liquid" - name: card label: πŸƒ Card widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Text: '{{fields.text}}'" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Text", name: "text", widget: "text", required: false } - name: tags label: 🏷 Tags widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: "Tags used for collections" - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - name: eleventyNavigation label: πŸ” Menu widget: object collapsed: true summary: " Title: {{fields.title}} | Parent: {{fields.parent}} | Text: {{fields.text}} | Key: {{fields.key}} | Order: {{fields.order}} | " fields: - { label: "title", name: "title", widget: "string", required: false} - name: "parent" label: Parent page widget: relation collection: page searchFields: [title] valueField: "{{eleventyNavigation.key}}" displayFields: ["Title: {{title}} | key: '{{eleventyNavigation.key}}'"] required: false multiple: false - { label: "Machine key", name: "key", widget: "string", required: false, hint: "The Key is used by the system Main is used for the frontpage - and should always be" } - { label: "Order", name: "order", widget: "number", required: false} - { label: "Text", name: "text", widget: "text", required: false} - { label: "icon", name: "icon", widget: "string", required: false, hint: "A string used for an icon file name " } - name: opengraph label: πŸ‘‹ Opengraph widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Description: '{{fields.description}}'" fields: - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Title", name: "title", widget: "string", required: false, hint: 'Opengraph Card title' } - { label: "Description", name: "description", widget: "text", required: false } - name: seo label: πŸ” SEO widget: object collapsed: true summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - { label: "title", name: "title", widget: "string", required: false, hint: 'seo title not above 65 characters' } - { label: "Meta Description", name: "description", widget: "text", required: false, hint: "Keep it between 70 - 155 characters" } - label: "Show this page in search Engines" name: "index" widget: "select" default: "index" required: false options: - { label: "Yes", value: "index" } - { label: "No dont show", value: "noindex" } - label: "Search Engines follow the links" name: "follow" widget: "select" default: "nofollow" required: false options: - { label: "Yes", value: "follow" } - { label: "No", value: "nofollow" } - name: "layout" label: "πŸ’… Select Template" widget: relation collection: pagetemplates searchFields: [saga-template-name] valueField: "page/{{filename}}.{{extension}}" displayFields: ["saga-template-name", " (File: layouts/page/{{filename}}.{{extension}})"] required: true default: "page/page.liquid" - label: "Publish" name: "permalink" widget: "string" required: false hint: Set publish (permalink) to 'false' if you don want to publish this page # --------------------------------------------------------------- # Pages Pagination # --------------------------------------------------------------- - name: pagepagination label: πŸ—‚οΈ Page Pagination label_singular: πŸ—‚οΈ Page pagnination description: "a Page with paginations based on a Collection" folder: "src/content/pagepagination" slug: "" preview_path: /{{path}}/ create: true delete: true editor: preview: false summary: "🏩 Title '{{title}}' {{pagination.data}} Url: '{{path}}' " sortable_fields: ["url", "title", "order"] view_filters: - label: collection field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tags field: tags nested: depth: 1 summary: "{{title}}" fields: - label: "title" name: "title" widget: "string" required: true - name: pagination label: ↔️ pagination widget: object collapsed: false summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - label: "size" name: "size" widget: "number" default: 2 value_type: "int" min: 2 max: 101 step: 1 - { label: "alias", name: "alias", widget: "hidden", default: "contentcollection"} - { label: "generatePageOnEmptyData", name: "generatePageOnEmptyData", widget: "hidden", default: "true"} - name: "data" label: "data" widget: relation collection: tags searchFields: [title] valueField: "collections.{{slug}}" display_fields: ["title"] required: true multiple: false hint: "the collection" - label: "path" name: "path" widget: "string" required: true hint: the prefix for the paginated pages fx[path]/[number] ⛔️ Make sure the prefix dont collide with an existing url - name: "layout" label: "πŸ’… Select Template" widget: relation collection: pagepaginationTemplates searchFields: [saga-template-name] valueField: "pagepagination/{{filename}}.{{extension}}" displayFields: ["saga-template-name", " (File: layouts/pagepagination/{{filename}}.{{extension}})"] required: true default: "page/page.liquid" - label: "πŸ“· Image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false media_library: config: multiple: true media_folder: "src/content/upload/" - label: "alt" name: "alt" widget: "string" required: false hint: alt text - label: "Photo Credit" name: "photocredit" widget: "string" required: false hint: alt text - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false - name: card label: πŸƒ Card widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Text: '{{fields.text}}'" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Text", name: "text", widget: "text", required: false } - name: tags label: 🏷 Tags widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: "Tags used for collections" - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - name: eleventyNavigation label: πŸ” Menu widget: object collapsed: true summary: " Title: {{fields.title}} | Parent: {{fields.parent}} | Text: {{fields.text}} | Key: {{fields.key}} | Order: {{fields.order}} | " fields: - { label: "title", name: "title", widget: "string", required: false} - name: "parent" label: Parent page widget: relation collection: page searchFields: [title] valueField: "{{eleventyNavigation.key}}" displayFields: ["Title: {{title}} | key: '{{eleventyNavigation.key}}'"] required: false multiple: false - { label: "Machine key", name: "key", widget: "string", required: false, hint: "The Key is used by the system Main is used for the frontpage - and should always be" } - { label: "Order", name: "order", widget: "number", required: false} - { label: "Text", name: "text", widget: "text", required: false} - { label: "icon", name: "icon", widget: "string", required: false, hint: "A string used for an icon file name " } - name: opengraph label: πŸ‘‹ Opengraph widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Description: '{{fields.description}}'" fields: - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Title", name: "title", widget: "string", required: false, hint: 'Opengraph Card title' } - { label: "Description", name: "description", widget: "text", required: false } - name: seo label: πŸ” SEO widget: object collapsed: true summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - { label: "title", name: "title", widget: "string", required: false, hint: 'seo title not above 65 characters' } - { label: "Meta Description", name: "description", widget: "text", required: false, hint: "Keep it between 70 - 155 characters" } - label: "Show this page in search Engines" name: "index" widget: "select" default: "index" required: false options: - { label: "Yes", value: "index" } - { label: "No dont show", value: "noindex" } - label: "Search Engines follow the links" name: "follow" widget: "select" default: "nofollow" required: false options: - { label: "Yes", value: "follow" } - { label: "No", value: "nofollow" } # --------------------------------------------------------------- # Post Collection # --------------------------------------------------------------- - name: post label: πŸ§‘πŸ½β€πŸ’» Posts label_singular: πŸ§‘πŸ½β€πŸ’» Post description: "blogpost" folder: "src/content/post" slug: "{{year}}/{{month}}/{{day}}_{{slug}}" preview_path: /post/{{title}}/ create: true delete: true editor: preview: false summary: "{{title}} {{url.parent}} date:{{created}} {{card.image}} " sortable_fields: ["title", "order", "created"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tag field: tags - label: created field: created pattern: "([0-9]+(-[0-9]+)+)" - label: Drafts field: eleventyExcludeFromCollections nested: depth: 5 # max depth to show in the collection tree summary: "{{title}}" fields: - label: "title" name: "title" widget: "string" required: true - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false hint: help text - name: card label: πŸƒ Card widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Text: '{{fields.text}}'" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Text", name: "text", widget: "text", required: false } - name: tags label: 🏷 Tags widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: "Tags used for collections" - label: "πŸ•’ created" name: "created" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true - name: "authors" label: "authors" widget: relation collection: author searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: Who wrote this - label: "order" name: "order" widget: "number" default: 1 required: false hint: "optional order" value_type: int min: 1 max: 200 step: 1 - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - name: opengraph label: πŸ‘‹ Opengraph widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Description: '{{fields.description}}'" fields: - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Title", name: "title", widget: "string", required: false, hint: 'Opengraph Card title' } - { label: "Description", name: "description", widget: "text", required: false } - label: "url" name: "url" widget: "string" required: false hint: Overwrite the title generated url - name: seo label: πŸ” SEO widget: object collapsed: true summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - { label: "title", name: "title", widget: "string", required: false, hint: 'seo title not above 65 characters' } - { label: "Meta Description", name: "description", widget: "text", required: false, hint: "Keep it between 70 - 155 characters" } - label: "Show this page in search Engines" name: "index" widget: "select" default: "index" required: false options: - { label: "Yes", value: "index" } - { label: "No dont show", value: "noindex" } - label: "Search Engines follow the links" name: "follow" widget: "select" default: "nofollow" required: false options: - { label: "Yes", value: "follow" } - { label: "No", value: "nofollow" } - name: "layout" label: "πŸ’… Select Template" widget: relation collection: posttemplates searchFields: [saga-template-name] valueField: "post/{{filename}}.{{extension}}" displayFields: ["saga-template-name", " (File: layouts/post/{{filename}}.{{extension}})"] required: true default: "page/page.liquid" # --------------------------------------------------------------- # Notifications # --------------------------------------------------------------- - name: notification label: πŸ“£ Notifications label_singular: πŸ“£ Notification description: "Notifications and alerts" folder: "src/content/notification" slug: "" preview_path: notification// create: true delete: true editor: preview: false # Overview summary: "πŸ“£ {{title}} Status: {{status}} Draft: {{eleventyExcludeFromCollections}}" sortable_fields: ["title", "date"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Draft field: eleventyExcludeFromCollections - label: Status field: status fields: - label: "title" name: "title" widget: "string" required: true - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - label: πŸ’πŸ½β€β™‚οΈ Status name: "status" widget: "select" multiple: false options: ["info", "warning", "alert"] default: "info" - label: " ℹ️ Info" name: "text" widget: "markdown" buttons: - bold - italic - link required: false - label: "link to the page" name: "showlink" widget: "boolean" default: false - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false hint: help text - label: "πŸ•’ Date" name: "date" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true # --------------------------------------------------------------- # Relations Tags # --------------------------------------------------------------- - name: tags label_singular: 🏷 Tag label: 🏷 Tags description: "Tagging to generate content for collections" folder: "src/content/tag" slug: "{{title}}" summary: "🏷 {{title}} " hide: false create: true delete: false editor: preview: false fields: - label: "title" name: "title" widget: "string" required: true - label: "πŸ“· Image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false media_library: config: multiple: true media_folder: "src/content/upload/" - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false hint: help text - name: card label: πŸƒ Card widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Text: '{{fields.text}}'" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Text", name: "text", widget: "text", required: false } - name: opengraph label: πŸ‘‹ Opengraph widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Description: '{{fields.description}}'" fields: - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Title", name: "title", widget: "string", required: false, hint: 'Opengraph Card title' } - { label: "Description", name: "description", widget: "text", required: false } - name: seo label: πŸ” SEO widget: object collapsed: true summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - { label: "title", name: "title", widget: "string", required: false, hint: 'seo title not above 65 characters' } - { label: "Meta Description", name: "description", widget: "text", required: false, hint: "Keep it between 70 - 155 characters" } - label: "Show this page in search Engines" name: "index" widget: "select" default: "index" required: false options: - { label: "Yes", value: "index" } - { label: "No dont show", value: "noindex" } - label: "Search Engines follow the links" name: "follow" widget: "select" default: "nofollow" required: false options: - { label: "Yes", value: "follow" } - { label: "No", value: "nofollow" } - name: eleventyNavigation label: πŸ” Menu widget: object collapsed: true summary: " Title: {{fields.title}} | Parent: {{fields.parent}} | Text: {{fields.text}} | Key: {{fields.key}} | Order: {{fields.order}} | " fields: - { label: "title", name: "title", widget: "string", required: false} - name: "parent" label: Parent page widget: relation collection: page searchFields: [title] valueField: "{{eleventyNavigation.key}}" displayFields: ["Title: {{title}} | key: '{{eleventyNavigation.key}}'"] required: false multiple: false - { label: "Machine key", name: "key", widget: "string", required: false, hint: "The Key is used by the system Main is used for the frontpage - and should always be" } - { label: "Order", name: "order", widget: "number", required: false} - { label: "Text", name: "text", widget: "text", required: false} - { label: "icon", name: "icon", widget: "string", required: false, hint: "A string used for an icon file name " } - name: "layout" label: "πŸ’… Select Template" widget: relation collection: tagtemplates searchFields: [saga-template-name] valueField: "tag/{{filename}}.{{extension}}" displayFields: ["saga-template-name", " (File: layouts/tag/{{filename}}.{{extension}})"] required: true default: "page/page.liquid" - name: author label: "πŸ™‹β€β™‚οΈ Author" label_singular: "πŸ™‹β€β™‚οΈ Author" description: "Price" folder: "src/content/author" slug: "{{title}}" preview_path: /custom/{{title}}/ create: true delete: true hide: false editor: preview: false summary: "{{title}} " sortable_fields: ["title", "order", "date"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tags field: tags nested: depth: 1 # max depth to show in the collection tree summary: "" fields: - label: "title" name: "title" widget: "string" required: true hint: Title - label: "link" name: "link" widget: "string" required: true - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false # --------------------------------------------------------------- # Menu Items # --------------------------------------------------------------- - name: menuitem label: πŸ” Menu Items label_singular: πŸ” Menu Item description: "Single menu items to be included in the exising navigation" folder: "src/content/menuitem" slug: "" create: true delete: true editor: preview: false # Overview summary: " πŸ” {{title}} | Url: {{eleventyNavigation.url}} | Parent: {{eleventyNavigation.parent}}" sortable_fields: ["title"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Url field: eleventyNavigation.url fields: - label: "Title" name: "title" widget: "string" required: true hint: The title is used for admin reference - the menu items title is set in the navigation - name: eleventyNavigation label: πŸ” Menu widget: object collapsed: true summary: " Title: {{fields.title}} | Parent: {{fields.parent}} | Text: {{fields.text}} | Key: {{fields.key}} | Order: {{fields.order}} | " fields: - { label: "title", name: "title", widget: "string", required: false} - name: "parent" label: Parent page widget: relation collection: page searchFields: [title] valueField: "{{eleventyNavigation.key}}" displayFields: ["Title: {{title}} | key: '{{eleventyNavigation.key}}'"] required: false multiple: false - { label: "Machine key", name: "key", widget: "string", required: false, hint: "The Key is used by the system Main is used for the frontpage - and should always be" } - { label: "Order", name: "order", widget: "number", required: false} - { label: "Text", name: "text", widget: "text", required: false} - { label: "icon", name: "icon", widget: "string", required: false, hint: "A string used for an icon file name " } - name: skill label: "🍳 Skills" label_singular: "🍳 Skill" description: "the mad skills yo" folder: "src/content/skill" slug: "{{title}}" preview_path: /custom/{{title}}/ create: true delete: true hide: false editor: preview: false summary: "{{title}} Rate:{{rate}}" sortable_fields: ["title", "order", "date"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Group field: group nested: depth: 1 # max depth to show in the collection tree summary: "" fields: - label: "title" name: "title" widget: "string" required: true hint: Title - label: "rate" name: "rate" widget: "number" default: 3 required: true hint: "1-5 step: 1" value_type: int min: 1 max: 5 step: 1 - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" # COMPONENETS - label: 'πŸ‘· Components (Pagebuilder)' label_singular: 'πŸ‘· Component' name: 'components' widget: 'list' add_to_top: true collapsed: true types: - label: '🧾 Text Markdown' name: 'text' widget: object summary: " || {{fields.template}}" fields: - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateText searchFields: [title] valueField: "components/text/{{filename}}.{{extension}}" displayFields: ["components/text/{{filename}}.{{extension}}"] required: true default: "components/text/text.liquid" - label: 'πŸŒ‰ Image & Text' name: 'image' widget: object summary: " || {{fields.template}}" fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - { label: Image, name: image, widget: image, choose_url: true,required: false } - { label: alt, name: alt, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImage searchFields: [title] valueField: "components/image/{{filename}}.{{extension}}" displayFields: ["components/image/{{filename}}.{{extension}}"] required: true default: "components/image/image.liquid" - label: 'πŸŒ‡ πŸŒ‰Image Gallery' name: 'images' widget: object summary: ' || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - label: Images name: images widget: list add_to_top: true fields: - { label: Image, name: image, widget: image, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImages searchFields: [title] valueField: "components/images/{{filename}}.{{extension}}" displayFields: ["components/images/{{filename}}.{{extension}}"] required: true default: "components/images/images.liquid" - name: cta label: πŸ“£ CTA widget: object summary: "{{fields.image}} {{fields.teaser}}" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "ctalink", name: "url", widget: "string", required: false } - { label: "cta text", name: "cta", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Image alt", name: "alt", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCta searchFields: [title] valueField: "components/cta/{{filename}}.{{extension}}" displayFields: ["components/cta/{{filename}}.{{extension}}"] required: true default: "components/cta/cta.liquid" - name: testamonials label: πŸ’¬ Testamonials widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Testamonial name: testamonial widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: Image, name: image, widget: "image", required: false, choose_url: true } - { label: Person, name: person, widget: string, required: false } - { label: Person title, name: persontitle, widget: string, required: false } - { label: url, name: url, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateTestamonial searchFields: [title] valueField: "components/testamonial/{{filename}}.{{extension}}" displayFields: ["components/testamonial/{{filename}}.{{extension}}"] required: true default: "components/testamonial/testamonial.liquid" - name: "calendar" label: "πŸ“† Calendar / Event" widget: object summary: '{{fields.date_start}} - {{fields.date_start}} || {{fields.template}}' fields: - label: "Calendar start" name: "date_start" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true required: false - label: "Calendar end" name: "date_end" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: false required: false - label: "Calendar All Day" name: "date_allday" widget: "boolean" default: false required: false - name: "template" label: "Template" widget: relation collection: componentTemplateCalendar searchFields: [title] valueField: "components/calendar/{{filename}}.{{extension}}" displayFields: ["components/calendar/{{filename}}.{{extension}}"] required: true default: "components/calendar/calendar.liquid" - name: "Address" label: "πŸ—Ί Address" widget: object summary: '{{fields.title}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Address name: address summary: '{{fields.name}} {{fields.street}} {{fields.zip}} {{fields.country}} {{fields.website}} {{fields.email}}' widget: list add_to_top: true fields: - { label: name, name: name, widget: string, required: false } - { label: street, name: street, widget: string, required: false } - { label: zip, name: zip, widget: string, required: false } - { label: country, name: country, widget: string, required: false } - { label: Locality, name: locality, widget: string, required: false } - { label: phone, name: phone, widget: string,required: false } - { label: url, name: url, widget: string, default:"https://",required: false } - { label: email, name: email, widget: string, default:"email@domaine.com",required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateAddress searchFields: [title] valueField: "components/address/{{filename}}.{{extension}}" displayFields: ["components/address/{{filename}}.{{extension}}"] required: true default: "components/address/address.liquid" - name: "download" label: "‡️ Download" widget: object summary: '{{fields.files.file }} || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Files name: files widget: list add_to_top: true fields: - { label: file, name: file, widget: file, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateDownload searchFields: [title] valueField: "components/download/{{filename}}.{{extension}}" displayFields: ["components/download/{{filename}}.{{extension}}"] required: true default: "components/download/download.liquid" - name: price label: πŸ’Ά Price Table widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: price name: price widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: Price, name: price, widget: string, required: false } - { label: featured, name: featured, widget: boolean, default: false, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: "url", name: "url", widget: "string", required: false } - label: elements name: elements widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: active, name: active, widget: boolean, default: true, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplatePrice searchFields: [title] valueField: "components/price/{{filename}}.{{extension}}" displayFields: ["components/price/{{filename}}.{{extension}}"] required: true default: "components/price/price.liquid" - name: links label: πŸ”— Links widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: links name: link widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - {label: link, name: url, widget: string, default: "https://"} - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateLink searchFields: [title] valueField: "components/link/{{filename}}.{{extension}}" displayFields: ["components/link/{{filename}}.{{extension}}"] required: true default: "components/link/link.liquid" - label: ' πŸ’Œ Form' name: 'form' widget: object summary: ' || ' fields: - { label: title, name: title, widget: string, default: '', required: false } - { label: Form name, name: name, widget: string, default: 'formname', required: true, hint: "Used as the forms name make it unique" } - { label: action url, name: action, widget: string, default: '/submitted', required: true, hint: "Link to the url the form goes to after submit" } - label: Form elements name: elements widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true types: - label: "Input : text, tel, phone, url" name: text widget: list fields: - { label: inputtype, name: inputtype, widget: select, options: ["text", "email", "tel", "url","date"], default: text } - { label: title, name: title, widget: string, required: true } - { label: placeholder, name: placeholder, widget: string, required: false } - { label: required, name: required, widget: boolean, default: false, required: false } - label: Textarea name: textarea widget: list fields: - { label: title, name: title, widget: string, required: true, default: Message } - { label: required, name: required, widget: boolean, default: false, required: false } - label: "Options: Dropdown / Checkbox / Radio" name: options widget: list fields: - { label: title, name: title, widget: string, required: true } - { label: "Option type", name: inputtype, widget: select, options: ["Dropdown", "Radio", "Checkbox"], default: Dropdown } - { label: required, name: required, widget: boolean, default: false, required: false } - label: option name: option widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true fields: - { label: title, name: title, widget: string, required: true } - { label: "checked/selected", name: checked, widget: boolean, default: false, required: false } - label: Button name: button widget: list fields: - { label: "Submit Title", name: title, widget: string, required: true, default: "Send" } - { label: "Reset button", name: reset, widget: boolean, required: false } - { label: "Reset title", name: resettitle, widget: string, required: false, default: "Reset" } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateForm searchFields: [title] valueField: "components/form/{{filename}}.{{extension}}" displayFields: ["components/form/{{filename}}.{{extension}}"] required: true default: "components/form/form.liquid" - label: 'πŸ—‚ Collection' name: 'collection' widget: object summary: '{{fields.collection}} Order by {{fields.order}} Reverse: {{fields.reverse}} Size: {{fields.size}} | 🎨: {{fields.template}}' fields: - name: collection label: collection widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] multiple: false hint: "Select the tag for the collection" - { label: order, name: order, widget: select, options: ['date','data.title', 'data.order'], default: 'date', required: false, hint: "select the data field for ordering" } - { label: reverse, name: reverse, widget: boolean, required: false, hint: "Reverse the order" } - { label: size, name: size, widget: number, default: '10', min: 1, required: false } - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCollection searchFields: [title] valueField: "components/collection/{{filename}}.{{extension}}" displayFields: ["components/collection/{{filename}}.{{extension}}"] required: true default: "components/collection/collection.liquid" - name: "pagecard" label: "πŸ“‘ Cards Page" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: page label: Related Pages widget: relation collection: page searchFields: [title] valueField: "{{url}}" displayFields: ["url: {{url}} - Title: {{title}}"] required: false multiple: true - name: "template" label: "Template" widget: relation collection: componentTemplatePagecard searchFields: [title] valueField: "components/pagecard/{{filename}}.{{extension}}" displayFields: ["components/pagecard/{{filename}}.{{extension}}"] required: true default: "components/pagecard/pagecard.liquid" - name: "njktemplate" label: "πŸ€– Template" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: "template" label: "Template" widget: relation collection: componentTemplateTemplates searchFields: [title] valueField: "components/templates/{{filename}}.{{extension}}" displayFields: ["components/templates/{{filename}}.{{extension}}"] required: true default: "components/templates/default.liquid" - label: "group" name: "group" widget: "select" multiple: false min: 1 max: 2 options: [ 'code', 'design', 'buzzwords','hosting', 'cms','pm','styleguide', 'tools'] default: code required: false hint: select - label: "prefered" name: "prefered" widget: "boolean" default: false required: false hint: Is this my pt prefered tech - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false - label: "url" name: "url" widget: "string" required: false hint: link - name: tags label: 🏷 Tags widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: "Tags used for collections" - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - name: work label: "πŸ’ͺ Work" label_singular: "πŸ’ͺ Work" description: "Work things" folder: "src/content/work" slug: "{{title}}" preview_path: /custom/{{title}}/ create: true delete: true hide: false editor: preview: false summary: "{{title}} " sortable_fields: ["title", "order", "date"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tags field: tags nested: depth: 1 # max depth to show in the collection tree summary: "" fields: - label: "title" name: "title" widget: "string" required: true hint: Title - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "role" name: "role" widget: "string" required: false hint: help text - label: "current" name: "current" widget: "boolean" default: false required: false hint: help text - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - label: "πŸ•’ Date From" name: "date_from" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true - label: "πŸ•’ Date To" name: "date_to" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - name: project label: "πŸš‚ Work Projects" label_singular: "πŸš‚ Work project" description: "Project details cases etc" folder: "src/content/project" slug: "{{title}}" preview_path: /custom/{{title}}/ create: true delete: true hide: false editor: preview: false summary: "{{title}} " sortable_fields: ["work","title", "order"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tags field: tags - label: work field: work nested: depth: 1 # max depth to show in the collection tree summary: "" fields: - label: "title" name: "title" widget: "string" required: true hint: Title - name: "work" label: "work" widget: relation collection: work searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: false hint: where did we do this - name: "skill" label: "skill" widget: relation collection: skill searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: Workspot - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "πŸ•’ Date From" name: "date_from" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true - label: "πŸ•’ Date To" name: "date_to" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true # COMPONENETS - label: 'πŸ‘· Components (Pagebuilder)' label_singular: 'πŸ‘· Component' name: 'components' widget: 'list' add_to_top: true collapsed: true types: - label: '🧾 Text Markdown' name: 'text' widget: object summary: " || {{fields.template}}" fields: - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateText searchFields: [title] valueField: "components/text/{{filename}}.{{extension}}" displayFields: ["components/text/{{filename}}.{{extension}}"] required: true default: "components/text/text.liquid" - label: 'πŸŒ‰ Image & Text' name: 'image' widget: object summary: " || {{fields.template}}" fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - { label: Image, name: image, widget: image, choose_url: true,required: false } - { label: alt, name: alt, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImage searchFields: [title] valueField: "components/image/{{filename}}.{{extension}}" displayFields: ["components/image/{{filename}}.{{extension}}"] required: true default: "components/image/image.liquid" - label: 'πŸŒ‡ πŸŒ‰Image Gallery' name: 'images' widget: object summary: ' || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - label: Images name: images widget: list add_to_top: true fields: - { label: Image, name: image, widget: image, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateImages searchFields: [title] valueField: "components/images/{{filename}}.{{extension}}" displayFields: ["components/images/{{filename}}.{{extension}}"] required: true default: "components/images/images.liquid" - name: cta label: πŸ“£ CTA widget: object summary: "{{fields.image}} {{fields.teaser}}" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "ctalink", name: "url", widget: "string", required: false } - { label: "cta text", name: "cta", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Image alt", name: "alt", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCta searchFields: [title] valueField: "components/cta/{{filename}}.{{extension}}" displayFields: ["components/cta/{{filename}}.{{extension}}"] required: true default: "components/cta/cta.liquid" - name: testamonials label: πŸ’¬ Testamonials widget: object summary: "{{fields.image}} {{fields.teaser}} " fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Testamonial name: testamonial widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: Image, name: image, widget: "image", required: false, choose_url: true } - { label: Person, name: person, widget: string, required: false } - { label: Person title, name: persontitle, widget: string, required: false } - { label: url, name: url, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateTestamonial searchFields: [title] valueField: "components/testamonial/{{filename}}.{{extension}}" displayFields: ["components/testamonial/{{filename}}.{{extension}}"] required: true default: "components/testamonial/testamonial.liquid" - name: "calendar" label: "πŸ“† Calendar / Event" widget: object summary: '{{fields.date_start}} - {{fields.date_start}} || {{fields.template}}' fields: - label: "Calendar start" name: "date_start" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true required: false - label: "Calendar end" name: "date_end" default: "" widget: "datetime" date_format: "DD/MM/YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: false required: false - label: "Calendar All Day" name: "date_allday" widget: "boolean" default: false required: false - name: "template" label: "Template" widget: relation collection: componentTemplateCalendar searchFields: [title] valueField: "components/calendar/{{filename}}.{{extension}}" displayFields: ["components/calendar/{{filename}}.{{extension}}"] required: true default: "components/calendar/calendar.liquid" - name: "Address" label: "πŸ—Ί Address" widget: object summary: '{{fields.title}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Address name: address summary: '{{fields.name}} {{fields.street}} {{fields.zip}} {{fields.country}} {{fields.website}} {{fields.email}}' widget: list add_to_top: true fields: - { label: name, name: name, widget: string, required: false } - { label: street, name: street, widget: string, required: false } - { label: zip, name: zip, widget: string, required: false } - { label: country, name: country, widget: string, required: false } - { label: Locality, name: locality, widget: string, required: false } - { label: phone, name: phone, widget: string,required: false } - { label: url, name: url, widget: string, default:"https://",required: false } - { label: email, name: email, widget: string, default:"email@domaine.com",required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateAddress searchFields: [title] valueField: "components/address/{{filename}}.{{extension}}" displayFields: ["components/address/{{filename}}.{{extension}}"] required: true default: "components/address/address.liquid" - name: "download" label: "‡️ Download" widget: object summary: '{{fields.files.file }} || {{fields.template}}' fields: - { label: title, name: title, widget: string, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - label: Files name: files widget: list add_to_top: true fields: - { label: file, name: file, widget: file, choose_url: true } - { label: title, name: title, widget: string, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateDownload searchFields: [title] valueField: "components/download/{{filename}}.{{extension}}" displayFields: ["components/download/{{filename}}.{{extension}}"] required: true default: "components/download/download.liquid" - name: price label: πŸ’Ά Price Table widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: price name: price widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: Price, name: price, widget: string, required: false } - { label: featured, name: featured, widget: boolean, default: false, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - { label: "url", name: "url", widget: "string", required: false } - label: elements name: elements widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - { label: active, name: active, widget: boolean, default: true, required: false } - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplatePrice searchFields: [title] valueField: "components/price/{{filename}}.{{extension}}" displayFields: ["components/price/{{filename}}.{{extension}}"] required: true default: "components/price/price.liquid" - name: links label: πŸ”— Links widget: object summary: " " fields: - { label: "title", name: "title", widget: "string", required: false } - label: links name: link widget: list add_to_top: true fields: - { label: title, name: title, widget: string, required: false } - {label: link, name: url, widget: string, default: "https://"} - { label: "Text", name: "text", widget: "markdown", required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateLink searchFields: [title] valueField: "components/link/{{filename}}.{{extension}}" displayFields: ["components/link/{{filename}}.{{extension}}"] required: true default: "components/link/link.liquid" - label: ' πŸ’Œ Form' name: 'form' widget: object summary: ' || ' fields: - { label: title, name: title, widget: string, default: '', required: false } - { label: Form name, name: name, widget: string, default: 'formname', required: true, hint: "Used as the forms name make it unique" } - { label: action url, name: action, widget: string, default: '/submitted', required: true, hint: "Link to the url the form goes to after submit" } - label: Form elements name: elements widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true types: - label: "Input : text, tel, phone, url" name: text widget: list fields: - { label: inputtype, name: inputtype, widget: select, options: ["text", "email", "tel", "url","date"], default: text } - { label: title, name: title, widget: string, required: true } - { label: placeholder, name: placeholder, widget: string, required: false } - { label: required, name: required, widget: boolean, default: false, required: false } - label: Textarea name: textarea widget: list fields: - { label: title, name: title, widget: string, required: true, default: Message } - { label: required, name: required, widget: boolean, default: false, required: false } - label: "Options: Dropdown / Checkbox / Radio" name: options widget: list fields: - { label: title, name: title, widget: string, required: true } - { label: "Option type", name: inputtype, widget: select, options: ["Dropdown", "Radio", "Checkbox"], default: Dropdown } - { label: required, name: required, widget: boolean, default: false, required: false } - label: option name: option widget: list summary: '{{fields.title}} || {{fields.inputtype}}' add_to_top: true fields: - { label: title, name: title, widget: string, required: true } - { label: "checked/selected", name: checked, widget: boolean, default: false, required: false } - label: Button name: button widget: list fields: - { label: "Submit Title", name: title, widget: string, required: true, default: "Send" } - { label: "Reset button", name: reset, widget: boolean, required: false } - { label: "Reset title", name: resettitle, widget: string, required: false, default: "Reset" } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateForm searchFields: [title] valueField: "components/form/{{filename}}.{{extension}}" displayFields: ["components/form/{{filename}}.{{extension}}"] required: true default: "components/form/form.liquid" - label: 'πŸ—‚ Collection' name: 'collection' widget: object summary: '{{fields.collection}} Order by {{fields.order}} Reverse: {{fields.reverse}} Size: {{fields.size}} | 🎨: {{fields.template}}' fields: - name: collection label: collection widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] multiple: false hint: "Select the tag for the collection" - { label: order, name: order, widget: select, options: ['date','data.title', 'data.order'], default: 'date', required: false, hint: "select the data field for ordering" } - { label: reverse, name: reverse, widget: boolean, required: false, hint: "Reverse the order" } - { label: size, name: size, widget: number, default: '10', min: 1, required: false } - { label: title, name: title, widget: string, required: false } - { label: text, name: text, widget: markdown, required: false } - name: "template" label: "Template" widget: relation collection: componentTemplateCollection searchFields: [title] valueField: "components/collection/{{filename}}.{{extension}}" displayFields: ["components/collection/{{filename}}.{{extension}}"] required: true default: "components/collection/collection.liquid" - name: "pagecard" label: "πŸ“‘ Cards Page" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: page label: Related Pages widget: relation collection: page searchFields: [title] valueField: "{{url}}" displayFields: ["url: {{url}} - Title: {{title}}"] required: false multiple: true - name: "template" label: "Template" widget: relation collection: componentTemplatePagecard searchFields: [title] valueField: "components/pagecard/{{filename}}.{{extension}}" displayFields: ["components/pagecard/{{filename}}.{{extension}}"] required: true default: "components/pagecard/pagecard.liquid" - name: "njktemplate" label: "πŸ€– Template" widget: object summary: '{{fields.page}} || {{fields.template}}' fields: - name: "template" label: "Template" widget: relation collection: componentTemplateTemplates searchFields: [title] valueField: "components/templates/{{filename}}.{{extension}}" displayFields: ["components/templates/{{filename}}.{{extension}}"] required: true default: "components/templates/default.liquid" - label: "url" name: "url" widget: "string" required: false - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false - name: card label: πŸƒ Card widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Text: '{{fields.text}}'" fields: - { label: "title", name: "title", widget: "string", required: false } - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Text", name: "text", widget: "text", required: false } - name: tags label: 🏷 Tags widget: relation collection: tags searchFields: [title] valueField: "{{slug}}" display_fields: ["title"] required: false multiple: true hint: "Tags used for collections" - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections - name: opengraph label: πŸ‘‹ Opengraph widget: object collapsed: true summary: "Title: '{{fields.title}}' | Image: {{fields.image}} | Description: '{{fields.description}}'" fields: - { label: "Image", name: "image", widget: "image", required: false, choose_url: true } - { label: "Title", name: "title", widget: "string", required: false, hint: 'Opengraph Card title' } - { label: "Description", name: "description", widget: "text", required: false } - name: seo label: πŸ” SEO widget: object collapsed: true summary: " Title: '{{fields.title}}' | Description: '{{fields.content}}' | Robots: {{fields.index}}, {{fields.follow}} " fields: - { label: "title", name: "title", widget: "string", required: false, hint: 'seo title not above 65 characters' } - { label: "Meta Description", name: "description", widget: "text", required: false, hint: "Keep it between 70 - 155 characters" } - label: "Show this page in search Engines" name: "index" widget: "select" default: "index" required: false options: - { label: "Yes", value: "index" } - { label: "No dont show", value: "noindex" } - label: "Search Engines follow the links" name: "follow" widget: "select" default: "nofollow" required: false options: - { label: "Yes", value: "follow" } - { label: "No", value: "nofollow" } - name: product label: "πŸ’° Product" label_singular: "πŸ’° Product" description: "Work things" folder: "src/content/product" slug: "{{title}}" preview_path: /custom/{{title}}/ create: true delete: true hide: false editor: preview: false summary: "{{title}} {{price}}" sortable_fields: ["title", "order", "date"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: type field: type nested: depth: 1 # max depth to show in the collection tree summary: "" fields: - label: "title" name: "title" widget: "string" required: true hint: Title - label: "Price" name: "price" widget: "number" default: 750 required: false hint: "Optional order" value_type: int min: 500 max: 200000 step: 500 - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "icon" name: "icon" widget: "string" required: true hint: ballicon filename - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false - label: "type" name: "type" widget: "select" multiple: false min: 1 max: 2 options: [ 'timer','website' , 'code' ,'design','theme'] default: code required: true hint: select - label: "Collection Order" name: "order" widget: "number" default: 1 required: false hint: "Optional order" value_type: int min: 1 max: 200 step: 1 - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections # --------------------------------------------------------------- # Brag blog # --------------------------------------------------------------- - name: bragblog label: πŸ•ΊπŸ» bragblog label_singular: πŸ•ΊπŸ» bragblog description: "bragblog" folder: "src/content/bragblog" slug: "{{year}}/{{month}}/{{day}}_{{slug}}" preview_path: /bragblog/{{title}}/ create: true delete: true editor: preview: false summary: "{{title}} {{url.parent}} date:{{created}} {{card.image}} " sortable_fields: ["title", "order", "created"] view_filters: - label: Drafts field: eleventyExcludeFromCollections pattern: true view_groups: - label: Tag field: tags - label: created field: created pattern: "([0-9]+(-[0-9]+)+)" - label: Drafts field: eleventyExcludeFromCollections nested: depth: 5 # max depth to show in the collection tree summary: "{{title}}" fields: - label: "title" name: "title" widget: "string" required: true - label: "πŸ‘©β€πŸ’» Body" name: "body" widget: "markdown" buttons: - link - bold - italic - code - heading-one - heading-two - heading-three - code - quote - bulleted-list editor_components: - image - video - code-block required: false hint: help text - label: "πŸ“· image" name: "image" widget: "image" default: /content/upload/default.png choose_url: true required: false hint: image media_library: config: multiple: true media_folder: "src/content/upload/" - label: "πŸ•’ created" name: "created" widget: "datetime" date_format: "DD.MM.YYYY" time_format: "HH:mm" format: "YYYY-MM-DD HH:mm:ss" picker_utc: true - label: "Collection Hide" name: "eleventyExcludeFromCollections" widget: "boolean" default: false required: false hint: Hide from collections