web: E9 und E10 entschieden — Zuordnung aktiv, eine Adresse je statischer Seite, Hub-Portalseiten leiten weiter

E9: Kategorie-Zuordnung wie vorgeschlagen übernommen, Zuordnung ist
standardmäßig an (CANONICAL_ASSIGNMENT_ENABLED). Auf der Dev-Kopie
verifiziert: Kopie trägt rel=canonical auf die Erstquelle und fällt aus der
Sitemap ihres Portals.

E10: faq, hilfe, gute-pressemitteilung, die vier Transparenzseiten und die
API-Doku lagen auf allen drei Hosts mit identischem Text und je eigenem
Self-Canonical. Jetzt führt presseecho die Informationsseiten, der Hub die
API-Doku; Sitemap und llms.txt nennen nur die führende Adresse.
Rechtstexte (Impressum, Datenschutz, AGB, Richtlinien, Meldeweg,
Kündigung) bleiben bewusst je Host — jede Domain ist ein eigenes Angebot
mit eigener Anbieterkennzeichnung.

Bei der Erreichbarkeitsprüfung des Hubs gefunden und behoben:
/de/preise, /de/veroeffentlichen, /de/newsrooms und /de/suche wurden unter
pressekonto.com mit dem Branding von businessportal24 ausgeliefert (der
Portal-Kontext fällt dort darauf zurück) — jetzt 301 auf presseecho, die
Transparenz-Navigation verlinkt direkt dorthin. /de/kontakt und
/de/ueber-uns sprangen über /de auf die Startseite, jetzt in einem Schritt.

Der Self-Canonical kommt jetzt aus dem aufgerufenen Host; Portal-Inhalte,
die über den Hub laufen, behalten ihr Portal (webPortalContextApplied).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-09-18 07:52:09 +00:00
parent 4edb915a9a
commit 5dcaf4e7b0
18 changed files with 434 additions and 17 deletions

View file

@ -19,7 +19,7 @@
return [
'enabled' => (bool) env('CANONICAL_ASSIGNMENT_ENABLED', false),
'enabled' => (bool) env('CANONICAL_ASSIGNMENT_ENABLED', true),
// DE-Slug der Hauptkategorie => Portal, das die Erstquelle führt.
// Vorschlag zu E9; Kategorien ohne Eintrag fallen auf `fallback`.
@ -44,4 +44,46 @@ return [
// bleibt Erstquelle; alternativ ein Portalname als feste Vorgabe.
'fallback' => env('CANONICAL_FALLBACK', 'first'),
/*
|----------------------------------------------------------------------
| Statische Seiten auf drei Hosts (E10, entschieden 18.09.2026)
|----------------------------------------------------------------------
|
| faq, hilfe, Transparenzseiten & Co. werden auf Hub und beiden Portalen
| mit identischem Text ausgeliefert — dieselbe Doppelung wie bei den
| Meldungen, nur dreifach. Die Portale führen (ältere Domains),
| presseecho ist der Standard; die API-Dokumentation gehört zum Hub.
|
| Routenname => Domain-Schlüssel aus config/domains.php. Nicht gelistete
| Seiten bleiben self-canonical je Host.
|
| BEWUSST NICHT gelistet: impressum, datenschutz, agb, richtlinien,
| melden, kuendigung. Jede Domain ist ein eigenes Angebot mit eigener
| Anbieterkennzeichnung, eigenem Meldeweg und eigenen Bedingungen —
| diese Seiten müssen je Host für sich stehen und auffindbar bleiben.
|
*/
'static_page_host' => [
'faq' => 'presseecho',
'hilfe' => 'presseecho',
'gute-pressemitteilung' => 'presseecho',
'was-kostet-eine-pressemitteilung' => 'presseecho',
'pressemitteilung-veroeffentlichen-ohne-abo' => 'presseecho',
'pressemitteilung-loeschen-oder-aendern-lassen' => 'presseecho',
'pressemitteilung-kostenlos-veroeffentlichen' => 'presseecho',
'api' => 'pressekonto',
],
/*
| Seiten, die es nur auf den Portalen gibt. Auf dem Hub wurden sie bisher
| mit Portal-Branding unter pressekonto.com ausgeliefert (der Portal-
| Kontext fällt dort auf businessportal24 zurück) — jetzt 301 auf das
| führende Portal.
*/
'portal_only_pages' => ['preise', 'veroeffentlichen', 'newsrooms', 'suche'],
'portal_only_host' => 'presseecho',
];