> **Stand der Doku**: 21.05.2026 — diese Liste beschreibt den Zielzustand > der oeffentlichen Strecke. Welcher Punkt bereits umgesetzt ist, ist > jeweils mit einer kurzen IST-Notiz markiert. > **Update 16.06.2026 — Editorial-Relaunch & Ausgaben-Routing.** > Die oeffentliche Strecke wurde auf ein gemeinsames Editorial-Design > (Komponenten `x-web.site-header` / `x-web.site-footer`, Design-Tokens in > `resources/css/web/shared-styles.css`) umgestellt und auf ein > Ausgaben-Praefix `/{edition}/…` (Sprache `de` | `en`) gehoben. > > - **Routing**: Neue Middleware `app/Http/Middleware/SetEdition.php` liest > die Ausgabe aus dem ersten URL-Segment, setzt Locale + `URL::defaults`. > `routes/web.php` gruppiert alle oeffentlichen Routen unter `/{edition}`. > `/` leitet auf die Default-Ausgabe (`/de`) um; Legacy-`.html`-URLs werden > per 301 auf die neuen Pfade gemappt. Baseline-Default in > `AppServiceProvider` fuer Route-Generierung ausserhalb von HTTP-Requests. > - **Neue URL-Schemata**: Detailseite `/{edition}/press-release/{slug}` > (Route `release.detail`), Kategorie `/{edition}/category/{slug}` > (Route `kategorie`). > - **Ausgabe = Sprache**: DE/EN-Umschalter im Header (Region-/CH-/AT-Auswahl > entfernt). `EditorialClock` (`app/Support/EditorialClock.php`) und die > Livewire-Komponenten sind sprachdynamisch. > - **Rubriken-Navigation** statt Uebersichtsseite: Helper > `app/Support/CategoryNavigation.php` liefert die Top-Rubriken der Ausgabe; > Header/Footer verlinken direkt auf die Kategorieseiten. Die alte > `web/kategorien.blade.php` + Route wurden entfernt (Legacy-301). > - **Tests**: `tests/Feature/Web/` deckt Edition-Routing, Kategorie-Seite, > Kategorie-Navigation, Detailseite, Veroeffentlichen, Suche und den > EditorialClock ab. Das sind die Seiten, die eigene URLs brauchen, weil sie verlinkbar sein müssen, SEO-Wert haben oder direkt von extern angesteuert werden. #### Inhalts-Seiten (Lese-Erfahrung) **1. Pressemitteilungs-Detailseite** – `/p/[slug]` oder `/pressemitteilung/[id]` Die wichtigste Seite überhaupt. Jede einzelne PM bekommt eine eigene Seite. Hier landen 90% des Traffics aus Google, Newsletter und Social Shares. _IST 21.05.2026_: umgesetzt als `resources/views/web/release-detail.blade.php` (Route `release.detail`, URL `/release/{slug}`). Das URL-Schema weicht vom Plan ab, ist aber konsistent über alle Themen. _IST 16.06.2026_: im Editorial-Design neu aufgebaut, echte Daten (Firma, Kontakte, Bilder, verwandte Meldungen). Neue URL `/{edition}/press-release/{slug}`; Legacy-URLs per 301. Test: `tests/Feature/Web/ReleaseDetailTest.php`. **2. Branchen-Übersichten** – `/branche/[slug]` Zum Beispiel `/branche/energie-klima`, `/branche/finanzen`. Aggregierte Sicht auf alle PMs einer Branche, mit Sub-Filtern. Das sind deine SEO-Goldgruben (jede Branche eine ranking-fähige Landing Page). _IST 21.05.2026_: umgesetzt (`web/kategorie.blade.php`, `web/kategorien.blade.php`). _IST 16.06.2026_: `web/kategorie.blade.php` im Editorial-Design mit echten Daten (Top-Meldung, Feed, Sub-/verwandte Branchen, Stats, Newsrooms). Neue URL `/{edition}/category/{slug}`. Es gibt **keine** Gesamt-Uebersicht mehr — die Header-/Footer-Navigation fuehrt direkt auf die Rubrik (`CategoryNavigation`); `web/kategorien.blade.php` + Route entfernt (Legacy-301). Tests: `CategoryPageTest`, `CategoryNavigationTest`. **3. Regionen-Übersichten** – `/region/[slug]` `/region/deutschland`, `/region/bayern`, `/region/oesterreich`. Analog zu Branchen, regional gefiltert. _IST 21.05.2026_: noch nicht umgesetzt. **4. Newsroom-Seite eines Unternehmens** – `/newsroom/[slug]` Markenseite eines Premium-Publishers mit eigener URL, Logo, allen PMs des Unternehmens. Ist gleichzeitig Verkaufsargument für Pro-/Agency-Tarif und SEO-Vorteil für die Unternehmen. _IST 21.05.2026_: Layout vorhanden (`web/newsrooms.blade.php`), Daten-Anbindung pro Firma noch offen. **5. Such-Ergebnisseite** – `/suche?q=...` Volltextsuche mit Filtern (Erweiterte Suche schreibt in URL-Parameter, dadurch teilbar/bookmarkbar). _IST 21.05.2026_: Layout vorhanden (`web/suche.blade.php`), Volltextsuche noch nicht aktiv. _IST 16.06.2026_: aktive Suche umgesetzt. `web/suche.blade.php` im Editorial-Design + Volt-Komponente `livewire/web/search.blade.php`: Suche ueber Titel/Untertitel/Text/Keywords sowie Firmenname und Rubrik-Name, Rubriken-Filter, Sortierung (Neueste/Aelteste/Meistgelesen), Pagination. URL-Parameter `q`, `category`, `sort` (teilbar/bookmarkbar); portal-/sprachsensitiv. Test: `tests/Feature/Web/SearchPageTest.php`. **6. Tag-/Themen-Seite** – `/thema/[slug]` _(optional, später)_ Nicht im ersten Release zwingend, aber sehr SEO-wirksam für aktuelle Themen ("Künstliche Intelligenz", "Lieferkettengesetz", "Energiekrise"). Würde ich datengetrieben aus den meistverwendeten Tags generieren lassen. _IST 21.05.2026_: nicht umgesetzt (bewusst spaeter). #### Service-/Vertriebs-Seiten **7. Pressemitteilung einreichen / Veröffentlichen** – `/veroeffentlichen` Die Conversion-Landingpage für neue Publisher. Erklärt Mehrwert, zeigt Tarife, Editor-Vorschau. Dahinter der eigentliche Editor (im User-Bereich). _IST 21.05.2026_: Landing-Seite vorhanden (`web/veroeffentlichen.blade.php`). Editor-Strecke im User-Bereich ist umgesetzt (siehe Phase 7). _IST 16.06.2026_: Landing-Seite im Editorial-Design neu aufgebaut, echte Kennzahlen (Archiv-Gesamt, heute veroeffentlicht/in Pruefung, aktive Newsrooms, Beispiel-Mitteilung). Einreichung verweist auf den zentralen Publisher-Bereich. Test: `tests/Feature/Web/VeroeffentlichenPageTest.php`. **8. Tarife & Preise** – `/preise` _(oder als Modal aus mehreren Stellen aufrufbar)_ Da Tarife auch im Modal aus dem CTA aufgerufen werden, ist die Frage: brauchen wir die Seite? Antwort ja, weil SEO ("Pressemitteilung veröffentlichen Preise" ist eine wichtige Suche) und weil sie verlinkbar sein muss aus AGB, Footer, Mediadaten. _IST 21.05.2026_: Layout vorhanden (`web/preise.blade.php`), echte Tarife noch nicht hinterlegt (Tarif-Modul siehe `Presseportal – Konzept für Relaunch.md` Abschnitt 8). **9. Mediadaten / Werbung** – `/mediadaten` oder `/werben` Für Mediaplaner und potentielle Werbekunden: alle buchbaren Slot-Typen (Top-Slot, Highlights, Newsletter, Branchen-Sponsoring), Reichweiten-Daten, Preise, Booking-Kontakt. Pflicht-Seite für jede Plattform mit Anzeigeninventar. _IST 21.05.2026_: nicht umgesetzt. **10. Newsletter-Anmeldung als eigene Seite** – `/newsletter` Auch wenn Newsletter im Footer und in einer Sektion auf der Startseite eingebettet ist, brauchst du eine eigene Seite für direkte Anmelde-Links (aus E-Mails, Social, Werbekampagnen). _IST 21.05.2026_: Layout in den Themes vorhanden, eigene Anmelde-Seite noch nicht. #### Vertrauens- / Editorial-Seiten **11. Über uns** – `/ueber-uns` Plattform-Geschichte, Team, redaktionelle Haltung. Kurz und persönlich, kein Marketing-Geschwurbel. _IST 21.05.2026_: Layout vorhanden (`web/ueber-uns.blade.php`, `web/team.blade.php`). **12. Redaktion / Redaktionsrichtlinien** – `/redaktion` Wichtige Vertrauensseite: Wer prüft die Inhalte? Wie funktioniert der Content-Score? Was ist der Unterschied zu redaktionell geprüften Anzeigen? Diese Seite differenziert dich von Spam-Portalen. _IST 21.05.2026_: noch nicht umgesetzt. **13. Kontakt** – `/kontakt` Klassisch, mit Funktions-E-Mails (presse@, redaktion@, werbung@, support@) und Kontaktformular. _IST 21.05.2026_: Layout vorhanden (`web/kontakt.blade.php`). #### Rechtliches **14. Impressum** – `/impressum` **15. Datenschutz** – `/datenschutz` **16. AGB** – `/agb` **17. Cookie-Einstellungen** – `/cookies` _(oder Modal)_ Diese vier sind Pflicht und nicht zusammenfassbar. _IST 21.05.2026_: alle vier als Layout vorhanden (`web/impressum.blade.php`, `web/datenschutz.blade.php`, `web/agb.blade.php`, `web/cookies.blade.php`). Inhalte sind teilweise Platzhalter — vor Go-Live durch Anwalt zu pruefen. #### Technik / Distribution **18. RSS-Feeds-Übersicht** – `/feeds` Liste aller verfügbaren RSS-Feeds (alle, pro Branche, pro Region). Eine Seite, listet alle Feed-URLs auf. _IST 21.05.2026_: nicht umgesetzt. **19. API-Dokumentation** – `/api` Für Distribution-Partner und Pro-/Agency-Kunden mit API-Zugang. _IST 21.05.2026_: Seite vorhanden (`web/api.blade.php`). Pre-existing `ApiDocumentationTest` ist rot, weil `docs/api/v1.yml` noch fehlt — eigener Track. #### DSA-/Rechts-Pflichten **20. PM melden** – `/melden/[id]` Öffentlicher Notice-and-Action-Endpoint, eigener Pfad pro PM (kann auch als Modal von der PM-Detailseite kommen, aber direkter Link für rechtssichere Beschwerden besser). _IST 21.05.2026_: nicht umgesetzt (Phase 2/3, DSA-Pflicht). **21. Pressemitteilung verwalten (Magic-Link)** – `/verwalten` Einstiegspunkt für den Pressekontakt-Flow (E-Mail eingeben → Magic Link). Dahinter dann der eingeloggte Verwaltungs-Bereich. _IST 21.05.2026_: nicht umgesetzt (Phase 2, siehe `Presseportal – Konzept für Relaunch.md` Abschnitt 6). --- ### Was als Modal/Overlay läuft (keine eigene Seite) Das sind die Sachen, die man oft in einer separaten Seite versteckt sieht, aber besser inline gelöst werden – kein Kontext-Verlust für den User. - **Erweiterte Suche** → Modal mit Filtern (URL-Parameter werden trotzdem gesetzt für Teilbarkeit) - **Tarife-Übersicht aus CTAs** → Modal (neben der eigenen `/preise`-Seite) - **Whitepaper-Download mit Lead-Capture** → Modal mit Name/E-Mail-Feldern - **Newsletter-Anmeldung aus Sektion** → inline ohne Seitenwechsel - **PM melden aus Detailseite** → Modal (mit Fallback auf eigene URL) - **Cookie-Einstellungen** → Modal (mit Fallback auf eigene URL für Rechtssicherheit) - **Login** → Modal (Anmelden-Button öffnet Modal, kein Seitenwechsel; eigene Seite nur als Fallback `/login`) - **Bild-Lightbox** auf PM-Detailseite → Overlay - **Teilen-Funktionen** auf PM-Detailseite → Modal mit Plattform-Auswahl und vorgenerierten Texten - **Tarif-Wechsel im User-Bereich** → Modal - **Credit-Aufladung** → Mini-Checkout-Modal (war im Konzept schon so geplant) --- ### Was im eingeloggten User-Bereich liegt Hier ist wichtig: **alles unter einer einzigen Dashboard-URL**, nicht 15 Untermenüs. Ein Bereich, mehrere Tabs/Sektionen. **Publisher-Dashboard** – `/dashboard` > **IST-Stand 21.05.2026**: Im Code heisst der Customer-Bereich `/admin/me` > (Routen-Namen `me.*`); das Admin-Backend liegt unter `/dashboard` und ist > Editoren/Admins vorbehalten. Die Bereiche im User-Backend sind als > eigene Pages mit `wire:navigate` (kein vollst. Seitenwechsel) > umgesetzt und ueber die Sidebar navigierbar. Eine echte > Tab-Komponente innerhalb einer einzigen URL gibt es nicht — der > Mehrwert ist gleich. Mit folgenden Bereichen als Tabs oder Sidebar-Navigation (kein Seitenwechsel zwischen den Tabs, oder URL-Tabs wie `/dashboard/meldungen`): - **Übersicht** – Stats, Credit-Stand, letzte Aktivitäten _(umgesetzt als `customer/dashboard`)_ - **Meine Pressemitteilungen** – Liste mit Status, Bearbeiten, Korrektur, Update _(umgesetzt als `customer/press-releases/{index,show,create,edit}`)_ - **Editor** – Neue PM erstellen / bestehende bearbeiten (eigene Unter-URL `/editor` oder `/editor/[id]`) _(umgesetzt als Teil von `press-releases.{create,edit}`)_ - **Newsroom** – Markenseite konfigurieren (für Pro/Agency) _(nicht umgesetzt — Phase 2)_ - **Statistiken** – Detail-Auswertungen pro PM _(nicht umgesetzt — Phase 2)_ - **Credits & Rechnungen** – Stand, Verlauf, Pakete kaufen, Rechnungen herunterladen _(nur Rechnungen umgesetzt; Credits sind Phase 2)_ - **Tarif & Account** – Tarif-Verwaltung, Rechnungsdaten, Team-Mitglieder (für Agency) _(Profil + Rechnungsadresse umgesetzt; Tarif/Team Phase 2)_ - **Boost & Platzierungen** – Slot-Buchungen, Verlauf, neue buchen _(als Stub vorhanden `customer/bookings`)_ **Pressekontakt-Bereich** (Magic-Link) – `/verwalten/[token]` Vereinfachte Version des Dashboards für nicht-registrierte Pressekontakte: - Liste der PMs mit dieser E-Mail - Änderungs-Wizard (Pfade A–G) - Optional: Account-Anlage für späteren direkten Zugriff **Admin-Bereich** – `/admin` _(intern, nicht öffentlich)_ Eigene Anwendung im Grunde, aber URL-mäßig unter Hauptdomain: - Review-Queue (Gelb-PMs, Beschwerden, Persönlichkeitsrecht-Pfad F) - User-Verwaltung - Inventar-Management (welche Slots sind gebucht) - Editorial-Picks setzen - Reports / Statistiken --- ### Strukturelle Faustregeln, die ich anwenden würde **1. Maximal zwei Klicks ab Startseite zu jeder Funktion.** Aus Startseite → Branchenseite → PM-Detail. Aus Startseite → Veröffentlichen → Tarif-Auswahl. Wenn etwas drei Klicks braucht, ist es falsch verortet. **2. Footer ist die Sitemap.** Alle Service- und Rechts-Seiten leben _nur_ im Footer. Keine Mega-Menüs im Header. Die Hauptnavigation oben ist ausschließlich Branchen-Navigation plus Veröffentlichen-CTA. **3. URL-Schemata konsistent.** Singular für Detailseiten (`/branche/...`, `/newsroom/...`), Verben für Aktionen (`/veroeffentlichen`, `/melden`, `/verwalten`). Keine kryptischen IDs in URLs, wenn vermeidbar – Slugs für SEO. **4. Modals statt Seiten, wenn möglich.** Aber: jeder Modal hat einen Fallback-URL-Endpoint, falls jemand direkt verlinkt oder einen Bookmark setzt. Beispiel: Tarife-Modal → `/preise` als eigene Seite existiert weiterhin. **5. Dashboard ist EIN Bereich.** Nicht "Meine PMs" als eigene Seite, "Stats" als andere, "Credits" als dritte – alles unter `/dashboard` mit Tabs. Reduziert kognitive Last und Navigation. --- ### Zusammenfassung als Liste zum Abhaken **Öffentliche Inhalts-Seiten (6):** Detailseite, Branche, Region, Newsroom, Suche, Thema **Service-/Vertriebs-Seiten (4):** Veröffentlichen, Preise, Mediadaten, Newsletter **Vertrauen/Editorial (3):** Über uns, Redaktion, Kontakt **Rechtliches (4):** Impressum, Datenschutz, AGB, Cookies **Technik/Distribution (2):** Feeds, API-Doku **DSA-Pflicht (2):** Melden, Verwalten (Magic-Link-Einstieg) **Eingeloggte Bereiche (3):** Dashboard, Pressekontakt-Bereich, Admin **Macht insgesamt 24 echte Seiten/Bereiche** – das ist für eine Plattform dieser Tiefe sehr schlank. Vergleichswert: presseportal.de hat über 80 Seiten in der Sitemap.