press releases

This commit is contained in:
Timo Knuth
2026-01-27 12:29:44 +01:00
parent be5db36b7f
commit 4dc7c29134
19 changed files with 606 additions and 16 deletions

View File

@@ -1,7 +1,8 @@
import React from 'react';
import type { Metadata } from 'next';
import SeoJsonLd from '@/components/SeoJsonLd';
import { organizationSchema, websiteSchema, softwareApplicationSchema } from '@/lib/schema';
import { organizationSchema, websiteSchema, softwareApplicationSchema, reviewSchema, aggregateRatingSchema } from '@/lib/schema';
import { getFeaturedTestimonials, getAggregateRating } from '@/lib/testimonial-data';
import HomePageClient from '@/components/marketing/HomePageClient';
function truncateAtWord(text: string, maxLength: number): string {
@@ -52,9 +53,19 @@ export async function generateMetadata(): Promise<Metadata> {
}
export default function HomePage() {
const featuredTestimonials = getFeaturedTestimonials();
const aggregateRating = getAggregateRating();
const reviewSchemas = featuredTestimonials.map(t => reviewSchema(t));
return (
<>
<SeoJsonLd data={[websiteSchema(), organizationSchema(), softwareApplicationSchema()]} />
<SeoJsonLd data={[
websiteSchema(),
organizationSchema(),
softwareApplicationSchema(),
aggregateRatingSchema(aggregateRating),
...reviewSchemas
]} />
{/* Server-rendered SEO content for crawlers */}
<div className="sr-only" aria-hidden="false">