feat: implement programmatic SEO solutions hub
- Add /solutions hub page with 10 category cards - Add /solutions/by-concern directory page - Add /solutions/by-oil directory page - Add Solutions section to Footer with navigation links - Add Breadcrumb component for solution pages - Add translations for all solution pages (sr, en, de, fr) - Fix ExitIntentDetector JSON parsing error - Update sitemap with solution pages - Create 3 sample solution pages with data files
This commit is contained in:
30
src/lib/programmatic-seo/schema.ts
Normal file
30
src/lib/programmatic-seo/schema.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
export interface FAQPageSchema {
|
||||
"@context": "https://schema.org";
|
||||
"@type": "FAQPage";
|
||||
mainEntity: Array<{
|
||||
"@type": "Question";
|
||||
name: string;
|
||||
acceptedAnswer: {
|
||||
"@type": "Answer";
|
||||
text: string;
|
||||
};
|
||||
}>;
|
||||
}
|
||||
|
||||
export function generateFAQPageSchema(
|
||||
questions: Array<{ question: string; answer: string }>
|
||||
): FAQPageSchema {
|
||||
return {
|
||||
"@context": "https://schema.org",
|
||||
"@type": "FAQPage",
|
||||
mainEntity: questions.map((q) => ({
|
||||
"@type": "Question",
|
||||
name: q.question,
|
||||
acceptedAnswer: {
|
||||
"@type": "Answer",
|
||||
text: q.answer,
|
||||
},
|
||||
})),
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user