feat: comprehensive SEO system with keywords and schema markup
- Add 4-locale keyword configurations (SR, EN, DE, FR) - Create schema generators (Product, Organization, Breadcrumb) - Add React components for JSON-LD rendering - Implement caching for keyword performance - Abstract all SEO logic for maintainability
This commit is contained in:
46
src/lib/seo/keywords/index.ts
Normal file
46
src/lib/seo/keywords/index.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* SEO Keywords Module
|
||||
* Centralized, localized keyword management for SEO optimization
|
||||
*
|
||||
* Usage:
|
||||
* import { getKeywords, getPageKeywords, Locale } from '@/lib/seo/keywords';
|
||||
*
|
||||
* const keywords = getKeywords('sr');
|
||||
* const homeKeywords = getPageKeywords('sr', 'home');
|
||||
*/
|
||||
|
||||
// Types
|
||||
export type {
|
||||
Locale,
|
||||
LocaleKeywords,
|
||||
BrandKeywords,
|
||||
PageKeywords,
|
||||
ProductCategoryKeywords,
|
||||
ContentKeywords,
|
||||
CompetitorKeywords,
|
||||
KeywordStrategy
|
||||
} from './types';
|
||||
|
||||
// Main functions
|
||||
export {
|
||||
getKeywords,
|
||||
getPageKeywords,
|
||||
getCategoryKeywords,
|
||||
getContentKeywords,
|
||||
getCompetitorKeywords,
|
||||
getBrandKeywords,
|
||||
clearKeywordsCache,
|
||||
getAvailableLocales,
|
||||
isValidLocale
|
||||
} from './utils/getKeywords';
|
||||
|
||||
// Keyword strategy
|
||||
export { keywordStrategy, getKeywordRecommendations } from './config/keywordStrategy';
|
||||
|
||||
// Locale-specific exports (for direct access if needed)
|
||||
export { serbianKeywords } from './locales/sr';
|
||||
export { englishKeywords } from './locales/en';
|
||||
export { germanKeywords } from './locales/de';
|
||||
export { frenchKeywords } from './locales/fr';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user