feat(seo): enhance multilingual support and SEO handling
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:
Torsten Schulz (local)
2026-04-07 15:43:16 +02:00
parent ebb2283646
commit c5b8860605
13 changed files with 542 additions and 98 deletions

View File

@@ -19,6 +19,7 @@ import enBlog from './locales/en/blog.json';
import enMinigames from './locales/en/minigames.json';
import enMessage from './locales/en/message.json';
import enPersonal from './locales/en/personal.json';
import enSeo from './locales/en/seo.json';
import cebGeneral from './locales/ceb/general.json';
import cebHeader from './locales/ceb/header.json';
import cebNavigation from './locales/ceb/navigation.json';
@@ -37,6 +38,7 @@ import cebPersonal from './locales/ceb/personal.json';
import cebFalukant from './locales/ceb/falukant.json';
import cebBlog from './locales/ceb/blog.json';
import cebMinigames from './locales/ceb/minigames.json';
import cebSeo from './locales/ceb/seo.json';
import deGeneral from './locales/de/general.json';
import deHeader from './locales/de/header.json';
@@ -56,6 +58,7 @@ import deBlog from './locales/de/blog.json';
import deMinigames from './locales/de/minigames.json';
import deMessage from './locales/de/message.json';
import dePersonal from './locales/de/personal.json';
import deSeo from './locales/de/seo.json';
import esGeneral from './locales/es/general.json';
import esHeader from './locales/es/header.json';
@@ -75,6 +78,7 @@ import esBlog from './locales/es/blog.json';
import esMinigames from './locales/es/minigames.json';
import esMessage from './locales/es/message.json';
import esPersonal from './locales/es/personal.json';
import esSeo from './locales/es/seo.json';
const messages = {
en: {
@@ -96,6 +100,7 @@ const messages = {
...enMinigames,
...enMessage,
...enPersonal,
...enSeo,
},
ceb: {
...enGeneral,
@@ -134,6 +139,7 @@ const messages = {
...cebFalukant,
...cebBlog,
...cebMinigames,
...cebSeo,
},
de: {
'Ok': 'Ok',
@@ -155,6 +161,7 @@ const messages = {
...deMinigames,
...deMessage,
...dePersonal,
...deSeo,
},
es: {
...esGeneral,
@@ -175,6 +182,7 @@ const messages = {
...esMinigames,
...esMessage,
...esPersonal,
...esSeo,
}
};