# Programmatic SEO Implementation Plan ## ManoonOils Serbian Market - Phase 1 **Branch:** `feature/programmatic-seo` **Scope:** Create 10 priority "Oil for Concern" pages in Serbian **Estimated Time:** 2-3 days --- ## Executive Summary Create 10 high-priority programmatic SEO pages targeting Serbian market with Serbian-language URLs and content. Pages will focus on top oil/concern combinations based on search volume and product alignment. --- ## Deliverables ### 1. Data Schema (JSON Files) **Location:** `data/oil-for-concern/` **10 Priority Pages:** | # | Slug (Serbian) | Oil | Concern | Priority | |---|----------------|-----|---------|----------| | 1 | `najbolje-ulje-divlje-ruze-za-bore` | Ulje divlje ruže | Bore | ⭐⭐⭐ | | 2 | `najbolje-arganovo-ulje-za-suvu-kozu` | Arganovo ulje | Suva koža | ⭐⭐⭐ | | 3 | `najbolje-jojoba-ulje-za-akne` | Jojoba ulje | Akne | ⭐⭐⭐ | | 4 | `najbolje-ulje-divlje-ruze-za-tamne-pjege` | Ulje divlje ruže | Tamne pjege | ⭐⭐⭐ | | 5 | `najbolje-arganovo-ulje-za-bore` | Arganovo ulje | Bore | ⭐⭐ | | 6 | `najbolje-ulje-pasjeg-trna-za-hiperpigmentaciju` | Ulje pasjeg trna | Hiperpigmentacija | ⭐⭐ | | 7 | `najbolje-jojoba-ulje-za-masnu-kozu` | Jojoba ulje | Masna koža | ⭐⭐ | | 8 | `najbolje-ulje-slatkog-badema-za-osetljivu-kozu` | Ulje slatkog badema | Osetljiva koža | ⭐⭐ | | 9 | `najbolje-ulje-divlje-ruze-za-oziljke-od-akni` | Ulje divlje ruže | Ožiljci od akni | ⭐⭐ | | 10 | `najbolje-arganovo-ulje-za-podocnjake` | Arganovo ulje | Podočnjaci | ⭐⭐ | --- ## JSON Schema Structure Each file must follow this exact structure: ```json { "slug": "serbian-slug-here", "oilSlug": "oil-identifier", "concernSlug": "concern-identifier", "pageTitle": { "sr": "Serbian title", "en": "English title", "de": "German title", "fr": "French title" }, "metaTitle": { "sr": "Serbian meta title | ManoonOils", "en": "English meta title | ManoonOils", "de": "German meta title | ManoonOils", "fr": "French meta title | ManoonOils" }, "metaDescription": { "sr": "Serbian meta description", "en": "English meta description", "de": "German meta description", "fr": "French meta description" }, "oilName": { "sr": "Serbian oil name", "en": "English oil name", "de": "German oil name", "fr": "French oil name" }, "concernName": { "sr": "Serbian concern name", "en": "English concern name", "de": "German concern name", "fr": "French concern name" }, "whyThisWorks": { "sr": "Detailed explanation in Serbian (200+ words)", "en": "English translation", "de": "German translation", "fr": "French translation" }, "keyBenefits": { "sr": ["6 benefits in Serbian"], "en": ["6 benefits in English"], "de": ["6 benefits in German"], "fr": ["6 benefits in French"] }, "howToApply": { "sr": ["6 steps in Serbian"], "en": ["6 steps in English"], "de": ["6 steps in German"], "fr": ["6 steps in French"] }, "expectedResults": { "sr": "Timeline explanation in Serbian", "en": "English translation", "de": "German translation", "fr": "French translation" }, "timeframe": { "sr": "Short timeframe summary in Serbian", "en": "English translation", "de": "German translation", "fr": "French translation" }, "complementaryIngredients": [ "vitamin-c", "panthenol", "sandalwood", "sweet-almond-oil" ], "productsToShow": [ "manoon-anti-age-serum" ], "customerResults": [ { "quote": { "sr": "Serbian testimonial", "en": "English translation", "de": "German translation", "fr": "French translation" }, "name": "Name", "age": 45, "skinType": "Serbian skin type", "timeframe": "Serbian timeframe" } ], "faqs": [ { "question": { "sr": "Question in Serbian", "en": "English translation", "de": "German translation", "fr": "French translation" }, "answer": { "sr": "Answer in Serbian", "en": "English translation", "de": "German translation", "fr": "French translation" } } ], "seoKeywords": { "sr": { "primary": ["3-5 primary keywords"], "secondary": ["3-5 secondary keywords"], "longTail": ["3-5 long-tail keywords"] }, "en": { "primary": ["3-5 primary keywords"], "secondary": ["3-5 secondary keywords"], "longTail": ["3-5 long-tail keywords"] }, "de": { "primary": ["3-5 primary keywords"], "secondary": ["3-5 secondary keywords"], "longTail": ["3-5 long-tail keywords"] }, "fr": { "primary": ["3-5 primary keywords"], "secondary": ["3-5 secondary keywords"], "longTail": ["3-5 long-tail keywords"] } }, "relatedPages": { "otherOilsForSameConcern": [ "serbian-slug-1", "serbian-slug-2" ], "sameOilForOtherConcerns": [ "serbian-slug-3", "serbian-slug-4" ] } } ``` --- ## Content Guidelines ### whyThisWorks Section (200+ words) - Scientific explanation of mechanism - Reference to specific compounds (vitamin A, fatty acids, etc.) - Comparison to synthetic alternatives - Why this oil specifically helps this concern ### keyBenefits (6 items) - Specific, measurable benefits - Focus on the target concern - Include both immediate and long-term benefits ### howToApply (6 steps) - Specific dosage (2-3 kapi) - Application technique - Frequency - Best time of day - Areas to focus on - Tips for better absorption ### expectedResults - Week 1-2: Initial improvements - Week 4-6: Visible changes - Week 8-12: Significant results - Long-term maintenance ### customerResults (2 testimonials) - Realistic names (Serbian) - Ages 35-55 - Specific skin types - Realistic timeframes - Authentic language ### FAQs (3 questions) - Common concerns about usage - Safety/side effects - Timeline expectations --- ## Manoon Product Ingredients Reference **Use these ingredients in content:** - Sweet almond oil (ulje slatkog badema) - Panthenol - Vitamin C - Sandalwood (sandalovina) - Apple oil (jabukovo ulje) --- ## URL Structure ``` /sr/resenja/najbolje-ulje-divlje-ruze-za-bore /sr/resenja/najbolje-arganovo-ulje-za-suvu-kozu ... ``` Note: Keep existing `/solutions/` routing but create Serbian slugs for new pages. --- ## Translation Requirements **Primary Language:** Serbian (native, authentic) **Secondary Languages:** English, German, French (professional translation quality) **Tone:** - Informative but approachable - Scientific but not clinical - Encouraging but not hyped - Trustworthy, expert advice --- ## SEO Keywords Strategy ### Primary Keywords Pattern: - `[oil] za [concern]` - `najbolje [oil] za [concern]` - `prirodno rešenje za [concern]` ### Secondary Keywords: - `serum za [concern]` - `[oil] protiv [concern]` - `prirodna nega za [concern]` ### Long-Tail Keywords: - `kako ukloniti [concern] prirodnim putem` - `[oil] iskustva` - `najbolji serum za [concern] posle 40` --- ## Page Template Components **Using existing:** - `OilForConcernPageTemplate` component - Header with logo and navigation - Footer - ProductReviews section - BeforeAfterGallery (existing from homepage) - ProductsGrid - FAQSchema **Tracking:** - Rybbit (already configured) - Mautic (already configured) --- ## Implementation Steps ### Step 1: Create JSON Data Files (Day 1) - [ ] Create all 10 JSON files in `data/oil-for-concern/` - [ ] Verify valid JSON structure - [ ] Test with dataLoader ### Step 2: Verify Routing (Day 1) - [ ] Test `/sr/resenja/{serbian-slug}` works - [ ] Verify canonical URLs correct - [ ] Check hreflang tags ### Step 3: Content Review (Day 2) - [ ] Review Serbian content for authenticity - [ ] Verify translations for other languages - [ ] Check all internal links work ### Step 4: Testing (Day 2) - [ ] Test all 10 pages render correctly - [ ] Verify product grids display - [ ] Check mobile responsiveness - [ ] Validate schema markup ### Step 5: Polish (Day 3) - [ ] Optimize images if needed - [ ] Add any missing related pages links - [ ] Final SEO review --- ## Success Criteria - [ ] 10 pages created with Serbian slugs - [ ] All pages render correctly at `/sr/resenja/{slug}` - [ ] Header/Footer/Tracking all present - [ ] Product grids display correctly - [ ] Before/After gallery shows - [ ] Schema markup validates - [ ] No console errors - [ ] Mobile responsive --- ## Next Steps After Completion 1. Deploy to production 2. Submit sitemap to Google 3. Monitor indexing 4. Track rankings for target keywords 5. Plan Phase 2 (next 20 pages) --- ## Appendix: Existing Infrastructure **Components already built:** - `OilForConcernPageTemplate` - Main page template - `ProductsGrid` - Product display with add-to-cart - `FAQSchema` - Schema markup component - `dataLoader.ts` - Data fetching utilities - `types.ts` - TypeScript interfaces - `/[locale]/solutions/[slug]/page.tsx` - Route handler **Components reused from site:** - `Header` - With logo, nav, hamburger menu - `Footer` - Full footer with links - `ProductReviews` - Testimonial section - `BeforeAfterGallery` - Before/after slider **Tracking already configured:** - Rybbit script in layout - Mautic tracking in layout --- ## Notes - Use existing page template - no new component development needed - Focus on high-quality content in Serbian - Ensure ingredients match actual Manoon products - Keep URLs in Serbian for better local SEO - All translations should be professional quality