🚨 ACİL SEO SORUNU
8 DOSYA ETKİLENDİ

🔴 Shop URL Yapısı Hatası

Sistemde /shop/product/{slug} şeklinde yanlış URL yapısı kullanılıyor, ancak route tanımı /shop/{slug} olarak ayarlanmış.
📅 12 Aralık 2025 🎯 Tenant: ixtif.com 👤 URL yapısı sorunu tespiti

🔍 Sorun Tespit Edildi

Yanlış URL Yapısı

❌ Kullanılan (YANLIŞ):
https://www.ixtif.com/shop/product/celik-plate-1253
↓ Olması Gereken ↓
✅ Route Tanımı (DOĞRU):
https://www.ixtif.com/shop/celik-plate-1253
Sebep: Route dosyasında Route::get('/{slug}') tanımlı, ancak sistem genelinde /product/{slug} kullanılıyor.

📂 Etkilenen Dosyalar (8 Adet)

1

TenantSitemapService.php

Line 770

EN KRİTİK! Sitemap tüm ürünler için yanlış URL üretiyor. Google bu yanlış URL'leri index ediyor.

❌ $url = $baseUrl . '/shop/product/' . $slug;
2

ShopProduct.php

Line 602

Model'in getUrl() metodu yanlış URL döndürüyor. Tüm frontend linkler hatalı!

❌ return url('/shop/product/' . $slug);
3

ProductSearchNode.php

Line 194

AI Chat ürün arama sonuçlarında yanlış link üretiyor.

❌ 'url' => "/shop/product/{$slug}"
4

ProductComparisonNode.php

Line 105

AI Chat ürün karşılaştırma sonuçlarında yanlış link.

❌ 'url' => "/shop/product/{$product->slug}"
5

PriceQueryNode.php

Line 135

AI Chat fiyat sorgulamalarında yanlış link.

❌ 'url' => "/shop/product/{$product->slug}"
6

LinkGeneratorNode.php

Line 81

AI Chat genel link üretiminde yanlış pattern.

❌ 'product' => "/shop/product/{$identifier}"
7

MarkdownService.php

Line 361, 390

Markdown içinde ürün linklerini yanlış üretiyor (2 yerde).

❌ $url = "/shop/product/{$id}";
8

product-grid-inline.blade.php

Line 27

Blog içinde ürün linklerini yanlış gösteriyor.

❌ url('/shop/product/' . $slug)

🚨 SEO Etkisi (Google'a Yansıma)

🔴 Google Index Sorunu

  • Sitemap yanlış URL'ler üretiyor → Google bu URL'leri tarayıp index ediyor
  • Kullanıcılar Google'da /shop/product/x URL'sine tıklıyor → 404 Not Found!
  • Doğru route /shop/{slug} olmasına rağmen, hiçbir yerde kullanılmıyor!
  • Duplicate Content riski: Hem yanlış hem doğru URL aynı içeriği gösterirse Google duplicate content cezası verebilir

⚠️ Kullanıcı Deneyimi Sorunu

  • ⚠️
    Frontend sayfalarında ürün linkleri yanlış → Kullanıcı tıklıyor → 404 hatası
  • ⚠️
    AI Chat yanlış link üretiyor → Chatbot kullanıcıyı hatalı sayfaya yönlendiriyor
  • ⚠️
    Blog içinde ürün linkleri çalışmıyor → Satış kaybı!

✅ Çözüm Planı

1

Tüm Dosyalarda Find & Replace Yüksek Öncelik

8 dosyada /shop/product/ ifadesini /shop/ ile değiştireceğiz.

Değiştirilecek Dosyalar:
✅ app/Services/TenantSitemapService.php
✅ Modules/Shop/app/Models/ShopProduct.php
✅ app/Services/ConversationNodes/Shop/ProductSearchNode.php
✅ app/Services/ConversationNodes/Shop/ProductComparisonNode.php
✅ app/Services/ConversationNodes/Shop/PriceQueryNode.php
✅ app/Services/ConversationNodes/Common/LinkGeneratorNode.php
✅ app/Services/MarkdownService.php (2 yerde)
✅ Modules/Blog/resources/views/components/product-grid-inline.blade.php

Beklenen Sonuç: Tüm sistem doğru URL yapısını kullanacak

2

Sitemap Yeniden Üret Yüksek Öncelik

Değişiklikler tamamlandıktan sonra sitemap'i yeniden üreteceğiz. Bu sayede Google'a doğru URL'ler gönderilecek.

Komut:
php artisan sitemap:generate

Beklenen Sonuç: public/sitemap.xml dosyası doğru URL'lerle güncellenecek

3

Google Search Console Bilgilendirme Orta Öncelik

Google'a sitemap güncellendiğini bildireceğiz ve yanlış URL'lerin silinmesini isteyeceğiz.

1. Yeni Sitemap Gönder:
Google Search Console → Sitemaps → Add new sitemap
2. Eski URL'leri Kaldır (Opsiyonel):
Removals → New Request → Remove URLs with this prefix: /shop/product/
3. Doğru URL'leri İndeksleme İste:
URL Inspection → Request Indexing (öncelikli ürünler için)

Beklenen Sonuç: 1-2 hafta içinde Google yeni URL'leri index edecek

4

301 Redirect Ekle (Güvenlik Ağı) Düşük Öncelik

Google eski URL'leri index'ten silene kadar 301 redirect ile kullanıcıları doğru sayfaya yönlendirebiliriz.

Mantık:
Eğer URL /shop/product/{slug} şeklindeyse → /shop/{slug} adresine 301 redirect

Beklenen Sonuç: Google eski URL'leri index'ten silse bile kullanıcı 404 görmez

5

Test ve Doğrulama Yüksek Öncelik

Tüm değişiklikler tamamlandıktan sonra kapsamlı test yapacağız.

✅ Sitemap kontrol: Tüm ürün URL'lerinin doğru formatta olduğunu doğrula
✅ Frontend test: Ana sayfadaki ürün linklerine tıklayıp çalıştığını kontrol et
✅ AI Chat test: Chatbot'a ürün sor, verdiği linke tıkla, çalışıyor mu?
✅ Blog test: Blog içindeki ürün widget'larının linklerini test et
✅ Model test: ShopProduct model'inin getUrl() metodunu test et

Beklenen Sonuç: Tüm linkler doğru çalışmalı, 404 hatası yok!

🔧 Teknik Detaylar

Route Tanımı (Doğru)

Modules/Shop/routes/web.php - Line 57
Route::get('/{slug}', [ShopController::class, 'show'])->name('shop.show');

Bu route tanımı şu demek: /shop/{slug} formatında URL bekliyor. Ortada /product/ YOK!

Kod Değişikliği Örneği

❌ Önce (Yanlış):
$url = '/shop/product/' . $slug;
✅ Sonra (Doğru):
$url = '/shop/' . $slug;

⚡ İşlem Öncelik Sırası

🔥1
8 dosyada find & replace yap
🔥2
Sitemap yeniden üret
🔥3
Test yap (frontend, AI chat, blog, model)
⚠️4
Google Search Console'a yeni sitemap gönder
✅5
301 Redirect ekle (opsiyonel güvenlik ağı)