b2in/config/cms_pages.php
Kevin Adametz 4b07bbdcae Startseite ruhiger, Otterpohl mit Montage, Marken-Bilder und Farbwelt-Entwurf
- Hinweisleiste per B2IN_ANNOUNCEMENT_BAR ausgeblendet (Standard aus)
- Hero: „Räume aus einer Hand.“ als neue Überschrift, zweiter Button entfernt
- Projekttext mit zentralem deutschen Vertragspartner (Punkt statt Gedankenstrich)
- Otterpohl als vierte Kernmarke: Text v2, Abschnitt „Montage“, Titelbild getauscht
- Markenabschnitte: Absätze mit „- “ als Liste mit fetter Einleitung
- Titelbilder und Galerien für CABINET, Rotpunkt, Febrü und Otterpohl (WebP)
- Feedback 17.09. in den Markentexten, Demobilder entfernt, WhatsApp-Nummer
- Palette „Modern“ fest ohne Schalter, Entwurf /entwurf mit Hero-Slideshow
- Seeder-Liste fürs Deployment im Entwicklungsplan

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 10:34:21 +00:00

299 lines
17 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
declare(strict_types=1);
/**
* Seitenbaum für den Inhalte-Editor im Portal (Nachtrag 12).
*
* Der Editor zeigt die CMS-Sektionen nicht mehr nach Datenbank-Gruppe, sondern so, wie sie auf
* der Website stehen: je Seite in der Reihenfolge von oben nach unten, mit Klartext-Titel und
* einem Satz, der sagt, was die Sektion ist. `anchor` ist die Sprungmarke in der Vorschau
* (das `id` des Abschnitts im Frontend).
*
* Eine Sektion, die auf mehreren Seiten steht, ist einmal eingetragen – dort, wo sie zuerst
* auftaucht – und nennt die anderen Seiten in der Beschreibung.
*
* `group`/`key` sind Gruppe und Schlüssel in flux_cms_contents (siehe cms_section_map.php).
* Sektionen, die in der Datenbank liegen, aber hier nicht eingetragen sind, sammelt der Editor
* unter „Nicht mehr verwendet“ – sie gehen also nicht verloren, stehen aber auch nicht im Weg.
*
* `fields` überschreibt Feldbeschriftungen je Sektion; alles andere kommt aus `field_labels`.
*/
return [
/*
|--------------------------------------------------------------------------
| Feldbeschriftungen
|--------------------------------------------------------------------------
| Gilt für Felder auf Sektionsebene und für Felder in Listeneinträgen.
| Unbekannte Schlüssel werden lesbar gemacht (button_text → „Button text“).
*/
'field_labels' => [
'title' => 'Überschrift',
'subtitle' => 'Untertitel',
'headline' => 'Überschrift',
'tagline' => 'Claim',
'text' => 'Text',
'intro' => 'Einleitung',
'description' => 'Beschreibung',
'content' => 'Inhalt',
'lead' => 'Vorspann',
'note' => 'Hinweis',
'label' => 'Beschriftung',
'badge' => 'Kennzeichen',
'eyebrow' => 'Überzeile',
'quote' => 'Zitat',
'author' => 'Zitatgeber',
'name' => 'Name',
'role' => 'Rolle / Funktion',
'city' => 'Ort',
'value' => 'Wert',
'number' => 'Zahl',
'suffix' => 'Zusatz',
'icon' => 'Icon',
'image' => 'Bild',
'image_alt' => 'Bildbeschreibung',
'alt' => 'Bildbeschreibung',
'logo' => 'Logo',
'link' => 'Link',
'url' => 'Adresse (URL)',
'href' => 'Link',
'link_text' => 'Linktext',
'button_text' => 'Button-Beschriftung',
'button_link' => 'Button-Link',
'primary_button' => 'Erster Button',
'secondary_button' => 'Zweiter Button',
'cta_title' => 'Überschrift Abschluss',
'cta_text' => 'Text Abschluss',
'cta_link' => 'Link Abschluss',
'items' => 'Einträge',
'steps' => 'Schritte',
'cards' => 'Karten',
'stats' => 'Kennzahlen',
'features' => 'Merkmale',
'benefits' => 'Vorteile',
'values' => 'Werte',
'links' => 'Links',
'columns' => 'Spalten',
'menu' => 'Menüpunkte',
'navigation' => 'Navigation',
'topics' => 'Themen',
'options' => 'Auswahlmöglichkeiten',
'placeholder' => 'Platzhaltertext',
'meta_title' => 'Seitentitel (Browser, Google)',
'meta_description' => 'Beschreibung für Google',
'email' => 'E-Mail',
'phone' => 'Telefon',
'whatsapp' => 'WhatsApp-Nummer',
'address' => 'Adresse',
'opening_hours' => 'Öffnungszeiten',
'copyright' => 'Copyright-Zeile',
'map_alt' => 'Beschreibung der Karte',
'region_label' => 'Beschriftung der Region',
'distance_suffix' => 'Zusatz hinter der Entfernung',
'hub' => 'Drehscheibe (Bielefeld)',
'steps_title' => 'Überschrift Ablauf-Block',
'steps_text' => 'Einleitung Ablauf-Block',
'x' => 'Position waagerecht (Entwickler)',
'y' => 'Position senkrecht (Entwickler)',
'id' => 'Sprungmarke (Entwickler)',
'slug' => 'Adresskürzel (Entwickler)',
'teaser' => 'Kurztext',
'summary' => 'Zusammenfassung',
'brands' => 'Marken',
'projects' => 'Projekte',
'partners' => 'Partner',
'questions' => 'Fragen',
'question' => 'Frage',
'answer' => 'Antwort',
'read_more' => 'Weiterlesen-Text',
'empty_text' => 'Text, wenn nichts vorhanden ist',
'success_text' => 'Text nach dem Absenden',
'submit_text' => 'Beschriftung Absenden-Button',
'privacy_text' => 'Datenschutz-Hinweis',
'subjects' => 'Betreffe',
'subject' => 'Betreff',
],
/*
|--------------------------------------------------------------------------
| Seiten in der Reihenfolge des Menüs
|--------------------------------------------------------------------------
*/
'pages' => [
'home' => [
'title' => 'Startseite',
'path' => '/',
'sections' => [
['group' => 'home', 'key' => 'hero', 'anchor' => 'hero', 'title' => 'Hero',
'description' => 'Der große Einstieg ganz oben: Überschrift, Text, Buttons und Bild.'],
['group' => 'home', 'key' => 'hero_slider', 'anchor' => 'hero', 'title' => 'Hero mit Slideshow (Entwurf)',
'path' => '/entwurf',
'description' => 'Der Hero des Entwurfs vom 24.09.: Überschrift, Text, Button und die Slideshow. Liste „slides“ leer = Titelbilder der Kernmarken; sonst je Eintrag image, label, caption und active.'],
['group' => 'home', 'key' => 'founder_bar', 'anchor' => 'gruender', 'title' => 'Gründer-Leiste',
'description' => 'Schmale Zeile mit Marcel Scheibe und Zitat. Steht auch auf „Über uns“ und in der Immobilien-Welt.'],
['group' => 'home', 'key' => 'audience_switch', 'anchor' => 'wege', 'title' => 'Zielgruppen-Wahl',
'description' => 'Zwei Wege: Privat einrichten oder Projekt ausstatten.'],
['group' => 'home', 'key' => 'core_brands', 'anchor' => 'marken', 'title' => 'Kernmarken',
'description' => 'Überschrift und Untertitel des Marken-Rasters. Die Kacheln selbst kommen aus der Markenverwaltung.'],
['group' => 'home', 'key' => 'origin_section', 'anchor' => 'herkunft', 'title' => 'Aus der Region gefertigt',
'description' => 'Karte mit Bielefeld als Drehscheibe und der Ablauf-Block am Beispiel CABINET. Die Standorte pflegst du bei den Marken. Steht auch auf /marken.'],
['group' => 'home', 'key' => 'vision_section', 'anchor' => 'vision', 'title' => 'Gebaut auf Expertise',
'description' => 'Die Geschichte hinter B2in: Text, Kennzahlen und Bild.'],
['group' => 'home', 'key' => 'sponsoring', 'anchor' => 'engagement', 'title' => 'Regional verbunden',
'description' => 'Vereine und Organisationen, die B2in unterstützt.'],
['group' => 'referenzen', 'key' => 'display_feed', 'anchor' => 'displays', 'title' => 'Aus den Stores',
'description' => 'Überschrift und Text des Display-Feeds. Die Inhalte kommen aus den Store Displays. Steht auch auf /referenzen.'],
['group' => 'home', 'key' => 'immobilien_teaser', 'anchor' => 'immobilien', 'title' => 'Immobilien-Teaser',
'description' => 'Der Übergang in die Immobilien-Welt am Ende der Startseite.'],
['group' => 'global', 'key' => 'cta_section', 'anchor' => 'cta', 'title' => 'Abschluss: Termin anfragen',
'description' => 'Der letzte Block vor dem Fuß. Steht auf allen Interior-Seiten.'],
],
],
'marken' => [
'title' => 'Marken',
'path' => '/marken',
'sections' => [
['group' => 'marken', 'key' => 'hero', 'anchor' => 'seitenkopf', 'title' => 'Seitenkopf',
'description' => 'Überschrift, Einleitung und Bild oben auf /marken. Die Markenblöcke darunter kommen aus der Markenverwaltung.'],
['group' => 'marken', 'key' => 'network', 'anchor' => 'netzwerk', 'title' => 'Mehr als Marken: unser Netzwerk',
'description' => 'Partner und Zulieferer jenseits der Kernmarken.'],
['group' => 'marken', 'key' => 'growth', 'anchor' => 'wachstum', 'title' => 'Die Markenwelt wächst',
'description' => 'Hinweis, dass weitere Marken folgen.'],
['group' => 'marken', 'key' => 'cta', 'anchor' => 'marken-cta', 'title' => 'Abschluss auf /marken',
'description' => 'Der Abschlussblock „Lernen Sie unsere Marken kennen“ mit Terminanfrage und WhatsApp.'],
['group' => 'marken', 'key' => 'craft', 'anchor' => 'handwerk', 'title' => 'Handwerk-Abschluss auf jeder Markenseite',
'description' => 'Der letzte Abschnitt auf den Seiten von CABINET, Rotpunkt und Febrü: „Planung plus Handwerk“ mit Link zu Otterpohl. Einmal gepflegt, überall gleich.', 'path' => '/marken/cabinet'],
],
],
'referenzen' => [
'title' => 'Referenzen',
'path' => '/referenzen',
'sections' => [
['group' => 'referenzen', 'key' => 'hero', 'anchor' => 'seitenkopf', 'title' => 'Seitenkopf',
'description' => 'Überschrift und Einleitung der Referenzen-Seite.'],
['group' => 'referenzen', 'key' => 'projects', 'anchor' => 'projekte', 'title' => 'Realisierte Projekte',
'description' => 'Überschrift, Text und Leerzustand über den Projekten. Die Projekte selbst pflegst du unter „Referenzen“.'],
],
],
'magazin' => [
'title' => 'Magazin',
'path' => '/magazin',
'sections' => [
['group' => 'magazin', 'key' => 'list', 'anchor' => 'magazin', 'title' => 'Magazin-Übersicht',
'description' => 'Überschrift und Einleitung der Übersicht. Die Beiträge pflegst du unter „Magazin“.'],
['group' => 'magazin', 'key' => 'detail', 'anchor' => null, 'title' => 'Beitragsseite',
'description' => 'Feste Texte auf jeder Beitragsseite, etwa „Zurück zur Übersicht“ und „Weitere Beiträge“.'],
],
],
'about' => [
'title' => 'Über uns',
'path' => '/about',
'sections' => [
['group' => 'about', 'key' => 'hero', 'anchor' => 'seitenkopf', 'title' => 'Seitenkopf',
'description' => 'Überschrift und Einleitung von „Über uns“.'],
['group' => 'about', 'key' => 'our_story', 'anchor' => 'geschichte', 'title' => 'Unsere Geschichte',
'description' => 'Der Text zur Entstehung von B2in.'],
['group' => 'about', 'key' => 'image_break', 'anchor' => 'bild', 'title' => 'Bildpause',
'description' => 'Großes Bild mit kurzer Zeile zwischen Geschichte und Werten.'],
['group' => 'about', 'key' => 'our_values', 'anchor' => 'werte', 'title' => 'Unsere Werte',
'description' => 'Die Werte-Kacheln.'],
['group' => 'netzwerk', 'key' => 'partner_cta', 'anchor' => 'cta', 'title' => 'Abschluss auf „Über uns“',
'description' => 'Der Abschlussblock am Ende von „Über uns“.'],
],
],
'contact' => [
'title' => 'Kontakt',
'path' => '/contact',
'sections' => [
['group' => 'contact', 'key' => 'contact_form', 'anchor' => 'kontakt', 'title' => 'Kontaktformular',
'description' => 'Überschrift, Betreffe, Feldbeschriftungen und Datenschutz-Hinweis des Formulars.'],
['group' => 'global', 'key' => 'contact', 'anchor' => 'kontakt', 'title' => 'Kontaktdaten',
'description' => 'Telefon, E-Mail, Adresse und die WhatsApp-Nummer. Ohne WhatsApp-Nummer erscheint kein WhatsApp-Button.'],
],
],
'faq' => [
'title' => 'FAQ',
'path' => '/faq',
'sections' => [
['group' => 'faq', 'key' => 'faq', 'anchor' => 'faq', 'title' => 'Fragen und Antworten',
'description' => 'Überschrift und die Liste der Fragen der Interior-Welt.'],
],
],
'global' => [
'title' => 'Auf jeder Seite',
'path' => '/',
'sections' => [
['group' => 'global', 'key' => 'announcement_bar', 'anchor' => 'header', 'title' => 'Hinweisleiste',
'description' => 'Schmale Zeile ganz oben über dem Menü. Leer lassen, um sie auszublenden.'],
['group' => 'global', 'key' => 'header', 'anchor' => 'header', 'title' => 'Hauptmenü',
'description' => 'Menüpunkte und Buttons im Kopf der Interior-Welt.'],
['group' => 'global', 'key' => 'appointment_widget', 'anchor' => null, 'title' => 'Terminanfrage-Widget',
'description' => 'Das schwebende Widget rechts unten: Texte, Themen und Zeitfenster.'],
['group' => 'global', 'key' => 'footer', 'anchor' => 'footer', 'title' => 'Fußbereich',
'description' => 'Spalten, Links, Social-Media und Copyright-Zeile.'],
],
],
'immobilien' => [
'title' => 'Immobilien-Welt',
'path' => '/immobilien',
'sections' => [
['group' => 'global', 'key' => 'announcement_bar_immobilien', 'anchor' => 'header', 'title' => 'Hinweisleiste (Immobilien)',
'description' => 'Hinweisleiste über dem Menü der Immobilien-Welt.'],
['group' => 'global', 'key' => 'header_immobilien', 'anchor' => 'header', 'title' => 'Hauptmenü (Immobilien)',
'description' => 'Menüpunkte und Buttons im Kopf der Immobilien-Welt.'],
['group' => 'global', 'key' => 'cta_section_immobilien', 'anchor' => 'cta', 'title' => 'Abschluss (Immobilien)',
'description' => 'Der letzte Block vor dem Fuß auf allen Immobilien-Seiten.'],
['group' => 'immobilien', 'key' => 'magazin_list', 'anchor' => 'magazin', 'title' => 'Magazin-Übersicht (Immobilien)',
'description' => 'Überschrift und Einleitung unter /immobilien/magazin.', 'path' => '/immobilien/magazin'],
['group' => 'immobilien', 'key' => 'about_hero', 'anchor' => 'seitenkopf', 'title' => 'Über B2in: Seitenkopf',
'description' => 'Überschrift und Einleitung unter /immobilien/ueber-b2in.', 'path' => '/immobilien/ueber-b2in'],
['group' => 'immobilien', 'key' => 'our_story', 'anchor' => 'geschichte', 'title' => 'Über B2in: Geschichte',
'description' => 'Der Geschichte-Block der Immobilien-Welt.', 'path' => '/immobilien/ueber-b2in'],
['group' => 'immobilien', 'key' => 'about_image_break', 'anchor' => 'bild', 'title' => 'Über B2in: Bildpause',
'description' => 'Bild zwischen Geschichte und Werten.', 'path' => '/immobilien/ueber-b2in'],
['group' => 'immobilien', 'key' => 'our_values', 'anchor' => 'werte', 'title' => 'Über B2in: Werte',
'description' => 'Die Werte-Kacheln der Immobilien-Welt.', 'path' => '/immobilien/ueber-b2in'],
['group' => 'faq', 'key' => 'faq_immobilien', 'anchor' => 'faq', 'title' => 'FAQ (Immobilien)',
'description' => 'Fragen und Antworten unter /immobilien/faq.', 'path' => '/immobilien/faq'],
['group' => 'contact', 'key' => 'contact_form_immobilien', 'anchor' => 'kontakt', 'title' => 'Kontaktformular (Immobilien)',
'description' => 'Abweichende Texte und Betreffe unter /immobilien/kontakt. Leere Felder übernehmen den Interior-Wert.', 'path' => '/immobilien/kontakt'],
],
],
'legal' => [
'title' => 'Rechtliches',
'path' => '/impressum',
'sections' => [
['group' => 'legal', 'key' => 'impressum', 'anchor' => null, 'title' => 'Impressum',
'description' => 'Pflichtangaben. Der Inhalt ist HTML.', 'path' => '/impressum'],
['group' => 'legal', 'key' => 'privacy', 'anchor' => null, 'title' => 'Datenschutz',
'description' => 'Datenschutzerklärung. Der Inhalt ist HTML.', 'path' => '/privacy'],
['group' => 'legal', 'key' => 'terms', 'anchor' => null, 'title' => 'AGB',
'description' => 'Allgemeine Geschäftsbedingungen. Der Inhalt ist HTML.', 'path' => '/terms'],
['group' => 'legal', 'key' => 'cookie_policy', 'anchor' => null, 'title' => 'Cookie-Hinweise',
'description' => 'Cookie-Richtlinie. Der Inhalt ist HTML.', 'path' => '/cookie-policy'],
],
],
],
/*
|--------------------------------------------------------------------------
| Sammelpunkt für alles, was in der Datenbank liegt, aber oben nicht steht
|--------------------------------------------------------------------------
*/
'unlisted' => [
'title' => 'Nicht mehr verwendet',
'description' => 'Sektionen stillgelegter Seiten (Netzwerk, Partner, alte Immobilien-Seite). Bleiben als Archiv liegen, erscheinen nirgends.',
],
];