This commit is contained in:
Timo Knuth
2026-01-26 16:47:57 +01:00
9 changed files with 112 additions and 1 deletions

View File

@@ -1,9 +1,11 @@
import type { Metadata } from 'next';
import AdBanner from '@/components/ads/AdBanner';
import '@/styles/globals.css';
import { Providers } from '@/components/Providers';
import MarketingLayout from './MarketingLayout';
// Import schema functions from library
import { organizationSchema, websiteSchema } from '@/lib/schema';
import FacebookPixel from '@/components/analytics/FacebookPixel';
const isIndexable = process.env.NEXT_PUBLIC_INDEXABLE === 'true';
@@ -45,6 +47,11 @@ export const metadata: Metadata = {
],
locale: 'en_US',
},
verification: {
other: {
'facebook-domain-verification': process.env.NEXT_PUBLIC_FACEBOOK_DOMAIN_VERIFICATION || '',
},
},
};
export default function MarketingGroupLayout({
@@ -61,6 +68,15 @@ export default function MarketingGroupLayout({
<MarketingLayout>
{children}
</MarketingLayout>
{/* Global Marketing Ad - Exclusions handled in AdBanner */}
<div className="container mx-auto px-4 sm:px-6 lg:px-8 max-w-7xl pb-8">
<AdBanner
dataAdSlot="2607110637"
dataAdFormat="auto"
fullWidthResponsive={true}
className="bg-slate-50 rounded-xl p-4 border border-slate-100"
/>
</div>
</>
);
}

View File

@@ -19,7 +19,7 @@ export default function ToolsLayout({
{/* AdBanner handles its own visibility - only shows when an ad is filled */}
<div className="container mx-auto px-4 sm:px-6 lg:px-8 max-w-7xl pb-8">
<AdBanner
dataAdSlot="1234567890" // Placeholder
dataAdSlot="2607110637" // Anzeige 1
dataAdFormat="auto"
fullWidthResponsive={true}
className="bg-slate-50 rounded-xl p-4 border border-slate-100"

View File

@@ -3,6 +3,7 @@ import { Suspense } from 'react';
import '@/styles/globals.css';
import { Providers } from '@/components/Providers';
import AdSenseScript from '@/components/ads/AdSenseScript';
import FacebookPixel from '@/components/analytics/FacebookPixel';
const isIndexable = process.env.NEXT_PUBLIC_INDEXABLE === 'true';
@@ -58,6 +59,9 @@ export default function RootLayout({
<Suspense fallback={null}>
<Providers>
<AdSenseScript />
<Suspense fallback={null}>
<FacebookPixel />
</Suspense>
{children}
</Providers>
</Suspense>

View File

@@ -5,6 +5,7 @@ import { Providers } from '@/components/Providers';
import MarketingDeLayout from './MarketingDeLayout';
import { organizationSchema, websiteSchema } from '@/lib/schema';
import AdSenseScript from '@/components/ads/AdSenseScript';
import FacebookPixel from '@/components/analytics/FacebookPixel';
export const metadata: Metadata = {
title: {
@@ -49,8 +50,15 @@ export const metadata: Metadata = {
'de': 'https://www.qrmaster.net/qr-code-erstellen',
},
},
verification: {
other: {
'facebook-domain-verification': process.env.NEXT_PUBLIC_FACEBOOK_DOMAIN_VERIFICATION || '',
},
},
};
import AdBanner from '@/components/ads/AdBanner'; // Import AdBanner
export default function MarketingDeGroupLayout({
children,
}: {
@@ -62,6 +70,7 @@ export default function MarketingDeGroupLayout({
<Suspense fallback={null}>
<Providers>
<AdSenseScript />
<FacebookPixel />
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationSchema()) }}
@@ -72,6 +81,16 @@ export default function MarketingDeGroupLayout({
/>
<MarketingDeLayout>
{children}
{/* Global Marketing Ad - Exclusions handled in AdBanner */}
<div className="container mx-auto px-4 sm:px-6 lg:px-8 max-w-7xl pb-8">
<AdBanner
dataAdSlot="2607110637"
dataAdFormat="auto"
fullWidthResponsive={true}
className="bg-slate-50 rounded-xl p-4 border border-slate-100"
/>
</div>
</MarketingDeLayout>
</Providers>
</Suspense>