R3.2: Kontakt-/Ueber-uns-Routen zurueckgebaut, Spoke-Footer bereinigt

- GET kontakt/ueber-uns -> 301 auf die Ausgaben-Startseite;
  kontakt.store-POST bleibt fuer das Hub-Kontakt-Modal
- Legacy-Aliases (contact/kontakt/ueber-uns) buendeln auf die Startseite
- Spoke-Footer: Kontakt als mailto (Betreiber-Fallback bis R2.1),
  Ueber-uns-Link raus, Selfservice-Kuendigungslink ergaenzt
- Sitemap-Konstanten bereinigt, Tests angepasst

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Kevin Adametz 2026-07-03 15:36:13 +00:00
parent 73fc3827c8
commit 0645d1d855
6 changed files with 55 additions and 25 deletions

View file

@ -16,21 +16,22 @@ use Illuminate\Support\Facades\Cache;
* Host-aware XML-Sitemap: Der Hub listet Landing- und Rechts-/Info-Seiten,
* die Spokes (presseecho, businessportal24) zusätzlich Kategorien, Newsrooms
* und alle im Archiv sichtbaren Pressemitteilungen ihres Portals. Marketing-
* Platzhalterseiten (team, presse, karriere, partner) und die Suche bleiben
* bewusst draußen (R2.4/R3.2). Pro Host eine Stunde gecacht.
* Platzhalterseiten (team, presse, karriere, partner, kontakt, ueber-uns)
* und die Suche bleiben bewusst draußen (R2.4/R3.2). Pro Host eine Stunde
* gecacht.
*/
class SitemapController extends Controller
{
/** @var list<string> */
private const HUB_PAGES = [
'faq', 'kontakt', 'ueber-uns', 'hilfe', 'api', 'kuendigung',
'faq', 'hilfe', 'api', 'kuendigung',
'impressum', 'datenschutz', 'agb', 'cookies',
];
/** @var list<string> */
private const PORTAL_PAGES = [
'preise', 'veroeffentlichen', 'newsrooms', 'faq', 'kontakt',
'ueber-uns', 'hilfe', 'api', 'impressum', 'datenschutz', 'agb', 'cookies',
'preise', 'veroeffentlichen', 'newsrooms', 'faq',
'hilfe', 'api', 'impressum', 'datenschutz', 'agb', 'cookies',
];
public function __invoke(Request $request): Response