feat(seo): enhance multilingual support and SEO handling
All checks were successful
Deploy to production / deploy (push) Successful in 2m46s
All checks were successful
Deploy to production / deploy (push) Successful in 2m46s
- Added support for multiple languages in the frontend, including English, Spanish, and Cebuano, improving accessibility for a broader audience. - Implemented hreflang links for better SEO performance, ensuring search engines can correctly index language-specific content. - Updated SEO metadata handling to utilize internationalization keys, enhancing the clarity and relevance of page titles and descriptions. - Refactored SEO utility functions to streamline the management of OpenGraph and hreflang attributes, improving maintainability and performance.
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
import { buildAbsoluteUrl } from '../utils/seo';
|
||||
|
||||
const FalukantLandingView = () => import('../views/public/FalukantLandingView.vue');
|
||||
const MinigamesLandingView = () => import('../views/public/MinigamesLandingView.vue');
|
||||
const VocabLandingView = () => import('../views/public/VocabLandingView.vue');
|
||||
@@ -11,26 +9,8 @@ const marketingRoutes = [
|
||||
component: FalukantLandingView,
|
||||
meta: {
|
||||
seo: {
|
||||
title: 'Falukant - Mittelalterliches Browser-Aufbauspiel auf YourPart',
|
||||
description: 'Falukant ist das mittelalterliche Browser-Aufbauspiel auf YourPart mit Handel, Politik, Familie, Bildung und Charakterentwicklung.',
|
||||
keywords: 'Falukant, Browsergame, Aufbauspiel, Mittelalterspiel, Wirtschaftsspiel, Politikspiel, YourPart',
|
||||
i18nKey: 'falukant',
|
||||
canonicalPath: '/falukant',
|
||||
jsonLd: [
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'VideoGame',
|
||||
name: 'Falukant',
|
||||
url: buildAbsoluteUrl('/falukant'),
|
||||
description: 'Mittelalterliches Browser-Aufbauspiel mit Handel, Politik, Familie und Charakterentwicklung.',
|
||||
gamePlatform: 'Web Browser',
|
||||
applicationCategory: 'Game',
|
||||
inLanguage: 'de',
|
||||
publisher: {
|
||||
'@type': 'Organization',
|
||||
name: 'YourPart',
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -40,20 +20,8 @@ const marketingRoutes = [
|
||||
component: MinigamesLandingView,
|
||||
meta: {
|
||||
seo: {
|
||||
title: 'Minispiele auf YourPart - Match 3 und Taxi im Browser',
|
||||
description: 'Entdecke die Browser-Minispiele auf YourPart: Match 3 und Taxi bieten schnelle Spielrunden direkt auf der Plattform.',
|
||||
keywords: 'Minispiele, Browsergames, Match 3, Taxi Spiel, Casual Games, YourPart',
|
||||
i18nKey: 'minigames',
|
||||
canonicalPath: '/minigames',
|
||||
jsonLd: [
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'CollectionPage',
|
||||
name: 'YourPart Minispiele',
|
||||
url: buildAbsoluteUrl('/minigames'),
|
||||
description: 'Browser-Minispiele auf YourPart mit Match 3 und Taxi.',
|
||||
inLanguage: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -63,22 +31,8 @@ const marketingRoutes = [
|
||||
component: VocabLandingView,
|
||||
meta: {
|
||||
seo: {
|
||||
title: 'Vokabeltrainer auf YourPart - Sprachen online lernen',
|
||||
description: 'Der Vokabeltrainer auf YourPart unterstützt dich beim Sprachenlernen mit interaktiven Lektionen, Kursen und Übungen.',
|
||||
keywords: 'Vokabeltrainer, Sprachen lernen, Online lernen, Sprachkurse, Übungen, YourPart',
|
||||
i18nKey: 'vocab',
|
||||
canonicalPath: '/vokabeltrainer',
|
||||
jsonLd: [
|
||||
{
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'SoftwareApplication',
|
||||
name: 'YourPart Vokabeltrainer',
|
||||
url: buildAbsoluteUrl('/vokabeltrainer'),
|
||||
description: 'Interaktiver Vokabeltrainer mit Kursen, Lektionen und Übungen zum Sprachenlernen.',
|
||||
applicationCategory: 'EducationalApplication',
|
||||
operatingSystem: 'Web',
|
||||
inLanguage: 'de',
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user