Update sitemaps and improve language handling

- Updated last modification dates in static and tools sitemaps to 2026-04-01.
- Enhanced language switching in the Header component to ensure language resources are loaded before changing the language.
- Added language resource loading logic in i18n configuration to support dynamic loading of language files.
- Improved SEO route page to ensure correct language is set based on URL parameters.
- Adjusted global CSS for deferred sections to optimize rendering.
- Configured Nginx to enable Brotli compression for better performance.
This commit is contained in:
Your Name
2026-04-01 07:25:24 +02:00
parent eb8d6463c5
commit 568446697c
13 changed files with 378 additions and 273 deletions

View File

@@ -1,6 +1,7 @@
import { useEffect } from 'react';
import { useTranslation } from 'react-i18next';
import { useParams } from 'react-router-dom';
import { ensureLanguageResources } from '@/i18n';
import { getProgrammaticToolPage, getSeoCollectionPage } from '@/config/seoPages';
import NotFoundPage from '@/pages/NotFoundPage';
import SeoCollectionPage from '@/pages/SeoCollectionPage';
@@ -17,9 +18,12 @@ export default function SeoRoutePage() {
const resolvedLocale = locale === 'ar' ? 'ar' : 'en';
useEffect(() => {
if (i18n.language !== resolvedLocale) {
void i18n.changeLanguage(resolvedLocale);
}
if (i18n.language === resolvedLocale) return;
void (async () => {
const resolved = await ensureLanguageResources(resolvedLocale);
await i18n.changeLanguage(resolved);
})();
}, [i18n, resolvedLocale]);
if (!slug) {
@@ -35,4 +39,4 @@ export default function SeoRoutePage() {
}
return <NotFoundPage />;
}
}