Messe-Landingpage /her-career/ zur herCAREER Expo 2026
Ziel des QR-Codes auf der Rückwandgrafik. Der gedruckte Code zeigt auf https://her-career.anelia-wolf.com – die Adresse ist damit unveränderlich. Die Seite liegt als /her-career/ im normalen Export, die Subdomain liefert dieselbe Datei aus demselben Docroot aus; DNS, Zertifikat, Vhosts für nginx und Apache und die Prüfbefehle stehen in docs/SUBDOMAIN-HERCAREER.md. Aufbau in beiden Sprachen: Hero (ink) → 01 Messe-Special → 02 Themen → 03 Auf der Messe → 04 Kontakt mit dem Formular. Die vier Themenblöcke der Rückwand liegen auf den drei Leistungsseiten, wie in der Navigation; jede Zeile verlinkt absolut auf die Hauptdomain. Der Wortlaut des Messe-Specials fehlt noch und steht sichtbar als „[…]“ auf der Seite. Der Build-Guard hält den Launch-Flip an, bis er da ist (CONTENT_TODO in src/lib/legal.ts, docs/OFFENE-DATEN.md Punkte 2.7–2.9). Deadline ist nicht der Livegang, sondern der 22.10.2026. - Canonical auf anelia-wolf.com/her-career/, damit die Subdomain-Kopie nicht ein zweites Mal im Index steht - flags.showHerCareer trägt Termine-Ledger, Sitemap-Eintrag und die Meta-Beschreibung mit Stand und Uhrzeit. Ab dem 24.10.2026 auf false - ServiceHero: facts und cta sind optional – ohne beides und ohne Foto entfällt die rechte Spalte - ProcessContact: optionaler Zähler, die Messeseite nummeriert ihre Abschnitte - Kopf-CTA auf dieser Seite ausgeblendet. Das macht eine Regel in globals.css, weil der Kopf außerhalb von <main> liegt und auf der Subdomain der Pfad ohnehin „/“ ist Enthält außerdem die bis dahin nicht committeten Änderungen an Header, LangSwitch, OverlayMenu, Wordmark und globals.css. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
147
src/content/her-career.ts
Normal file
147
src/content/her-career.ts
Normal file
@@ -0,0 +1,147 @@
|
||||
/**
|
||||
* /her-career/ – Messe-Landingpage zur herCAREER Expo 2026.
|
||||
*
|
||||
* Diese Seite ist das Ziel des QR-Codes auf der Rückwandgrafik am Stand
|
||||
* (`AneliaWolf_Rueckwandgrafik_1980x1240`). Der Code zeigt auf
|
||||
* `https://her-career.anelia-wolf.com` – die Adresse ist gedruckt und damit
|
||||
* unveränderlich; wie die Subdomain diese Datei ausliefert, steht in
|
||||
* docs/SUBDOMAIN-HERCAREER.md.
|
||||
*
|
||||
* Wer hier landet, steht mit dem Handy am Stand. Deshalb ist die Seite kurz und
|
||||
* beantwortet in dieser Reihenfolge: Wo bin ich, was war das Special, worüber
|
||||
* reden wir, wie erreiche ich dich. Alle weiterführenden Links gehen ABSOLUT auf
|
||||
* die Hauptdomain – ein Klick, und der Besucher ist auf anelia-wolf.com.
|
||||
*
|
||||
* Die vier Themenblöcke der Rückwand (Analysen, Trainings, 1:1 Coaching,
|
||||
* Keynotes) liegen hier auf den drei Leistungsseiten der Website, wie in der
|
||||
* Navigation: „Coaching & Analysen“ trägt die Analysen mit.
|
||||
*/
|
||||
import { routes, site } from "@/lib/site";
|
||||
import type { Widen } from "./widen";
|
||||
import { assertNoPlaceholders, collectStrings, ph } from "@/lib/legal";
|
||||
import type { FactItem, Headline, TocRow } from "./home";
|
||||
import { contact as contactHome, termine } from "./home";
|
||||
|
||||
/**
|
||||
* Absolute Adresse auf der Hauptdomain. Die Seite wird unter zwei Hosts
|
||||
* ausgeliefert (anelia-wolf.com/her-career/ und her-career.anelia-wolf.com);
|
||||
* ein relativer Link würde auf der Subdomain in deren eigenem Pfadraum landen.
|
||||
*/
|
||||
const main = (path: string): string => `${site.url}${path}`;
|
||||
|
||||
export const herCareer = {
|
||||
meta: {
|
||||
title: "herCAREER Expo 2026",
|
||||
/** Ohne Terminangaben – stimmt auch nach der Messe (`flags.showHerCareer: false`). */
|
||||
description:
|
||||
"Anelia Wolf zur herCAREER Expo 2026: das Messe-Special, die Themen vom Stand und der direkte Draht zur Keynote Speakerin, Trainerin und Coach.",
|
||||
/** Mit Stand und Keynote-Termin. Nur solange die Messe bevorsteht – die Route wählt. */
|
||||
descriptionMesse:
|
||||
"Anelia Wolf auf der herCAREER Expo 2026 im MOC München: Stand P.10.2 in Halle 3, Keynote am 23.10. um 10:30 im Auditorium 2. Messe-Special, Themen und der direkte Draht.",
|
||||
},
|
||||
numeral: "2026",
|
||||
/* Wie auf den Leistungsseiten: steht in der Inhaltsdatei, wird im Hero nicht gerendert. */
|
||||
masthead: {
|
||||
role: "Keynote Speakerin · Trainerin · Coach",
|
||||
center: "herCAREER Expo 2026",
|
||||
lang: "Deutsch & Englisch",
|
||||
},
|
||||
eyebrow: "herCAREER Expo 2026 · MOC München",
|
||||
h1: { before: "Schön, dass du ", em: "hier", after: " bist." } satisfies Headline,
|
||||
subline:
|
||||
"Du hast den Code an der Rückwand gescannt. Hier steht, worüber wir am Stand sprechen – das Messe-Special, meine drei Themen und der kürzeste Weg zu einem Gespräch.",
|
||||
/* Kein Knopf im Hero (Kundenwunsch, 07.09.2026): Die eine Aufforderung steht im
|
||||
Kontakt-Band am Fuß der Seite – dort mit Mail-Betreff „herCAREER Expo 2026“. */
|
||||
/* Kein Fakten-Stapel im Hero (Kundenwunsch, 07.09.2026): Stand, Messetermin und
|
||||
Themen standen dort ein zweites Mal – Standnummer und Termin trägt der
|
||||
Termine-Ledger weiter unten, die Themen der Abschnitt „Worüber wir reden“. */
|
||||
folio: { next: { label: "Messe-Special", href: "#messe-special" } },
|
||||
|
||||
/* ---------- 01 Messe-Special (ivory) ---------- */
|
||||
|
||||
special: {
|
||||
id: "messe-special",
|
||||
eyebrow: "Messe-Special",
|
||||
h2: { before: "Dein Vorteil.", em: "", after: "" } satisfies Headline,
|
||||
title: "Das Special",
|
||||
/* Wortlaut kommt von Anelia (docs/OFFENE-DATEN.md, Punkt 2.7). Bis dahin stehen die
|
||||
Zeilen sichtbar als „[…]“ auf der Seite, und der Build-Guard hält den Launch-Flip an. */
|
||||
rows: [
|
||||
{ label: "Das Angebot", value: ph("Messe-Special: Was bekommt, wer den Code scannt?") },
|
||||
{ label: "Gültig bis", value: ph("Frist, z. B. Anfragen bis 30.11.2026") },
|
||||
{ label: "So einlösen", value: ph("Bedingung, z. B. Stichwort in der Anfrage") },
|
||||
] satisfies readonly FactItem[],
|
||||
},
|
||||
|
||||
/* ---------- 02 Themen (ivory) ---------- */
|
||||
|
||||
themen: {
|
||||
id: "themen",
|
||||
eyebrow: "Themen",
|
||||
h2: { before: "Worüber wir reden.", em: "", after: "" } satisfies Headline,
|
||||
rows: [
|
||||
{
|
||||
numeral: "01",
|
||||
title: "Coaching & Analysen",
|
||||
oneLiner:
|
||||
"Wer bin ich, wo stehe ich, wo will ich hin? Persönlichkeits- und Verhaltensanalyse als Grundlage, dann die Arbeit zu zweit.",
|
||||
keywords: ["Potenzialanalyse", "1:1 Coaching", "Neuorientierung", "Leadership"],
|
||||
link: { label: "Zum Coaching", href: main(routes.coaching) },
|
||||
},
|
||||
{
|
||||
numeral: "02",
|
||||
title: "Trainings & Workshops",
|
||||
oneLiner:
|
||||
"B2B-Vertriebstraining: Umsatzwachstum durch Neukundengewinnung und Bestandskundenaufbau, typgerechte Kommunikation im Team.",
|
||||
keywords: ["Neukundengewinnung", "Bestandskunden", "Teamkommunikation"],
|
||||
link: { label: "Zu den Trainings", href: main(routes.trainings) },
|
||||
},
|
||||
{
|
||||
numeral: "03",
|
||||
title: "Keynotes & Speaking",
|
||||
oneLiner:
|
||||
"Inspirierende Vorträge für Firmen-Events und Veranstaltungen – Impulse, die im Gedächtnis bleiben.",
|
||||
keywords: ["WOLF-Prinzip", "Mut zum Erfolg", "Deutsch & Englisch"],
|
||||
link: { label: "Zu den Keynotes", href: main(routes.keynotes) },
|
||||
},
|
||||
] satisfies readonly TocRow[],
|
||||
},
|
||||
|
||||
/* ---------- 03 Auf der Messe (ivory) – nur mit flags.showHerCareer ---------- */
|
||||
|
||||
messe: {
|
||||
id: "auf-der-messe",
|
||||
eyebrow: "Auf der Messe",
|
||||
/* Eine Quelle für beide Seiten: derselbe Ledger steht auf der Startseite. */
|
||||
termine,
|
||||
},
|
||||
|
||||
/* ---------- 04 Kontakt (ink) ---------- */
|
||||
|
||||
/** Ziel des Datenschutz-Links im Formular – absolut, wie jeder Link von hier weg. */
|
||||
privacyHref: main(routes.datenschutz),
|
||||
|
||||
/**
|
||||
* Derselbe Block wie Sektion 06 der Startseite: Formular links, Mail, Telefon und
|
||||
* LinkedIn rechts. Feldbeschriftungen, Links und Abbinder kommen unverändert von
|
||||
* dort – eine Quelle. Eigen sind nur die Nummer, die Überschrift und der Betreff:
|
||||
* Mit „herCAREER Expo 2026“ ist im Postfach ohne Nachfrage zu sehen, welche
|
||||
* Anfrage von der Messe kommt.
|
||||
*/
|
||||
contact: {
|
||||
...contactHome,
|
||||
numeral: "04",
|
||||
h2: { before: "Lass uns ", em: "weiterreden", after: "." } satisfies Headline,
|
||||
/* Hinweiszeile und Datenschutz-Link entfallen hier (Kundenwunsch, 07.09.2026);
|
||||
die Rückmeldung nach dem Absenden („opened“) bleibt. Beide Rechtstexte stehen
|
||||
weiter im Fuß jeder Seite. */
|
||||
form: { ...contactHome.form, subject: "herCAREER Expo 2026", note: "", privacy: "" },
|
||||
},
|
||||
} as const;
|
||||
|
||||
/* Build-Guard: der Launch-Flip (`flags.showPlaceholders: false`) darf keine sichtbaren
|
||||
„[…]“ übrig lassen. Offene Punkte stehen in CONTENT_TODO (src/lib/legal.ts). */
|
||||
assertNoPlaceholders("src/content/her-career.ts", collectStrings(herCareer));
|
||||
|
||||
/** Struktur, nicht Wortlaut – die englische Fassung erfüllt denselben Typ. */
|
||||
export type HerCareerContent = Widen<typeof herCareer>;
|
||||
Reference in New Issue
Block a user