Shopify SEO Rehberi: Google’da Çıkmayan Mağazayı Düzeltmek
Shopify, teknik SEO’nun büyük bölümünü kutudan çıkarken halleder. Site haritası otomatik üretilir, sayfalar mobil uyumlu gelir, HTTPS varsayılandır. Buna rağmen çok sayıda Shopify mağazası organik aramada görünmez. Sorun genellikle platformda değil, koleksiyon mimarisinde, filtre yapısının ürettiği adreslerde ve ürün sayfalarındaki içerik yoksunluğundadır. Aşağıdaki adımlar bu dört alanı sırayla ele alır.
Shopify mağazam neden Google’da çıkmıyor?
En sık karşılaşılan dört neden şudur: mağaza hâlâ parola korumasında olduğu için taranamıyordur, koleksiyon sayfaları arama niyetine karşılık gelecek biçimde kurulmamıştır, filtre kombinasyonları binlerce benzer adres üreterek tarama bütçesini tüketmektedir veya ürün sayfalarında üreticiden gelen metin aynen kullanılmıştır.
Kontrol sırası şöyle olmalıdır. Önce mağazanın erişilebilir olduğundan emin olun: yönetim panelinde Online Store bölümünde parola korumasının kapalı olması gerekir. Ardından Google Search Console’da site haritasını (/sitemap.xml) gönderin ve Sayfalar raporunda kaç adresin dizine alındığına bakın. Dizine alınan sayfa sayısı ürün sayısının çok altındaysa sorun içerik tarafındadır; çok üstündeyse sorun filtre ve varyant adreslerindedir.
Shopify URL yapısı nasıl çalışır?
Shopify’ın adres yapısı sabittir ve değiştirilemez. Ürünler /products/, koleksiyonlar /collections/, statik sayfalar /pages/, blog yazıları /blogs/blog-adi/ ön ekiyle yayımlanır. Yalnızca bu ön eklerden sonraki kısım, yani handle, düzenlenebilir.
| İçerik tipi | Adres kalıbı | Düzenlenebilen kısım |
|---|---|---|
| Ürün | /products/urun-handle | urun-handle |
| Koleksiyon | /collections/koleksiyon-handle | koleksiyon-handle |
| Sayfa | /pages/sayfa-handle | sayfa-handle |
| Blog yazısı | /blogs/blog-handle/yazi-handle | her iki handle |
Bir ürün, koleksiyon içinden gezildiğinde /collections/koleksiyon-handle/products/urun-handle biçiminde de açılabilir. Aynı ürün için birden çok adres oluşması bu yüzdendir. Shopify bu durumda canonical etiketiyle asıl adresi işaret eder. Temanızda bu etiketin bulunduğundan emin olun; theme.liquid dosyasının <head> bölümünde şu satır yer almalıdır:
<link rel="canonical" href="{{ canonical_url }}">
Satır eksikse veya elle sabit bir adres yazılmışsa, koleksiyon içinden açılan ürün adresleri ayrı sayfalar gibi taranır.
Türkçe URL yapısı nasıl kurulur?
Türkçe karakterlerin handle’a dönüşümü her zaman istenen sonucu vermez. Ürün adı Türkçe karakter içerdiğinde otomatik üretilen handle bozuk çıkabilir veya harfler kaybolabilir. Bu yüzden handle’ı otomatik bırakmak yerine elle yazmak gerekir. Kural basittir: Türkçe karakterler ASCII karşılıklarına çevrilir, boşluklar tire olur, noktalama atılır.
| Ürün adı | Doğru handle | Kaçınılması gereken |
|---|---|---|
| Kadın Deri Çanta | kadin-deri-canta | kadın-deri-çanta |
| Şömine Seti (3’lü) | somine-seti-3lu | şömine-seti-3'lü |
| Bebek Uyku Tulumu %100 Pamuk | bebek-uyku-tulumu-pamuk | bebek-uyku-tulumu-%100-pamuk |
Handle’ı sonradan değiştirdiğinizde Shopify eski adres için otomatik yönlendirme oluşturmayı teklif eder. Bu kutuyu işaretli bırakın. Yönlendirmeleri panelde Online Store bölümündeki Navigation altında URL Redirects ekranından da elle yönetebilirsiniz.
Handle’a stop kelime doldurmak fayda getirmez. Adres kısa, okunur ve ürünü tanımlar olmalıdır. Aynı ürünün farklı renk varyantları için ayrı ürün kaydı açmak yerine varyant kullanmak, hem yönetimi hem de dizin yapısını sadeleştirir.
Koleksiyon sayfası nasıl yapılandırılmalı?
Koleksiyon sayfaları, bir e-ticaret sitesinin organik trafiğinin çoğunu taşıyan sayfalardır çünkü kategori düzeyindeki aramalar ürün adı aramalarından çok daha yüksek hacimlidir. Buna rağmen çoğu Shopify mağazasında koleksiyon sayfası yalnızca bir başlık ve ürün ızgarasından oluşur.
Sağlıklı bir koleksiyon sayfasında bulunması gerekenler:
- H1 olarak kategori adı. Tema, koleksiyon başlığını H1 olarak basmıyorsa şablonu düzeltin; bir sayfada tek H1 bulunmalıdır.
- Ürün ızgarasının üstünde 80 ile 150 kelimelik tanıtım metni. Bu metin kategoriyi tarif etmeli, hangi ürünlerin bu başlık altında toplandığını söylemelidir.
- Ürün ızgarasının altında daha uzun bir rehber metin. Beden tablosu, malzeme farkları, bakım önerileri gibi alıcının kararını etkileyen bilgiler buraya yazılır.
- Alt kategorilere ve ilgili koleksiyonlara iç linkler.
- Kategori düzeyinde sık sorulan sorular bölümü.
- Ekmek kırıntısı (breadcrumb) navigasyonu ve buna karşılık gelen şema.
Koleksiyon metinlerini tema şablonuna sabit yazmak yerine koleksiyonun kendi açıklama alanını (collection.description) kullanın; ızgara altındaki uzun metin için ayrı bir metafield tanımlamak yönetimi kolaylaştırır.
Ekmek kırıntısı şeması için koleksiyon şablonuna eklenebilecek örnek:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Ana Sayfa",
"item": {{ request.origin | json }}
},
{
"@type": "ListItem",
"position": 2,
"name": {{ collection.title | json }},
"item": {{ request.origin | append: collection.url | json }}
}
]
}
</script>
Ürün başlığı ve meta açıklaması nasıl yazılır?
Shopify’ın kendi belgelerinde sayfa başlığı için 70 karaktere kadar alan olduğu, kırpılmaması için 60 karakterde tutulmasının önerildiği belirtilir. Meta açıklama için önerilen sınır 160 karakterdir. Her sayfanın başlığı ve açıklaması benzersiz olmalı, hedef ifade başlığın başına yakın yerleştirilmelidir.
Ürün sayfası başlığında işe yarayan kalıp, ürün adının ardından ayırt edici bir niteliğin gelmesidir. Örnek: Kadın Hakiki Deri Çanta, Siyah | Marka Adı. Marka adını her başlığa eklemek karakter sınırını hızla doldurur; ürün adı uzunsa markayı çıkarmak daha doğrudur.
Ürün açıklaması tarafında en yaygın hata, tedarikçiden gelen metnin aynen kullanılmasıdır. Aynı metin onlarca sitede bulunduğunda hiçbirinin sıralanma şansı kalmaz. Açıklamayı yeniden yazarken alıcının karar verirken sorduğu soruları cevaplayın: ölçüler, malzeme, kullanım koşulları, bakım, kutu içeriği, uyumluluk. İlk 150 kelimeyi ürünün ne olduğunu ve kime uygun olduğunu anlatmaya ayırın.
Görsellerde alt metni doldurun. Shopify, alt metnin görselde ne olduğunu açıkça anlatan okunur bir ifade olmasını önerir. Dosya adlarını da anlamlı tutmak, görsel aramasından gelen trafiği artırır.
Filtreler ve canonical nasıl yönetilir?
Filtreler, Shopify SEO’sunda en çok soruna yol açan alandır. Bir koleksiyonda beş filtre ve her filtrede dört seçenek olduğunda, oluşabilecek kombinasyon sayısı yüzlerle ifade edilir. Bu adreslerin tamamının taranması, gerçek ürün sayfalarına ayrılan tarama bütçesini tüketir.
Shopify’ın yeni filtre yapısı, seçimleri ?filter. ile başlayan sorgu parametreleri olarak taşır. canonical_url nesnesi bu parametreleri içermez, dolayısıyla filtre uygulanmış bir koleksiyon sayfasının canonical adresi temiz koleksiyon adresini gösterir. Temanızda canonical satırı doğru duruyorsa bu taraf büyük ölçüde kendiliğinden çözülür.
Eski tema yapılarında filtreleme etiket (tag) üzerinden çalışır ve /collections/koleksiyon/etiket1+etiket2 biçiminde gerçek adresler üretir. Bu adresler sorgu parametresi olmadığı için ayrı sayfa gibi taranır. Birden çok etiketin birleştiği adresleri dizin dışında tutmak için koleksiyon şablonunda current_tags nesnesi kullanılabilir:
{% if current_tags.size > 1 %}
<meta name="robots" content="noindex, follow">
{% endif %}
Tek etiketli adreslerden gerçek arama hacmi olanları (örneğin siyah-canta gibi) dizinde bırakmak, hatta bunlar için ayrı koleksiyon açmak daha iyi sonuç verir. Ayrı koleksiyon açıldığında sayfaya kendi başlığını, kendi metnini ve kendi meta açıklamasını yazabilirsiniz.
Site içi arama sonuç sayfaları hiçbir zaman dizine girmemelidir. Shopify’ın kendi belgelerinde bunun için verilen örnek şudur:
{% if template contains 'search' %}
<meta name="robots" content="noindex">
{% endif %}
Belirli bir sayfayı dizin dışında tutmak gerektiğinde handle üzerinden koşul kurulur:
{% if handle contains 'dizin-disinda-kalacak-sayfa' %}
<meta name="robots" content="noindex">
{% endif %}
Shopify’ın robots.txt.liquid şablonu önceden yapılandırılmış olarak gelir ve sepet gibi sayfaları zaten engeller. Bu dosyaya müdahale etmeden önce sorunun gerçekten robots kaynaklı olduğundan emin olun; yanlış bir kural mağazanın tamamını taranamaz hale getirebilir.
Ürün şeması nasıl eklenir?
Shopify’ın ücretsiz teması Dawn dahil birçok tema, ürün sayfasında temel düzeyde Product şeması üretir. Temel alanların ötesine geçmek, yani marka, stok kodu, stok durumu ve para birimi gibi alanları eksiksiz doldurmak genellikle tema koduna müdahale gerektirir. Şemayı eklemeden önce mevcut temada zaten bir Product bloğu olup olmadığını kontrol edin; iki ayrı şema aynı sayfada çakışır.
Ürün şablonuna eklenebilecek örnek:
{%- assign v = product.selected_or_first_available_variant -%}
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Product",
"name": {{ product.title | json }},
"image": [{{ product.featured_image | image_url: width: 1200 | prepend: "https:" | json }}],
"description": {{ product.description | strip_html | truncate: 300 | json }},
"sku": {{ v.sku | json }},
"brand": {
"@type": "Brand",
"name": {{ product.vendor | json }}
},
"offers": {
"@type": "Offer",
"url": {{ request.origin | append: product.url | json }},
"priceCurrency": {{ cart.currency.iso_code | json }},
"price": {{ v.price | divided_by: 100.0 | json }},
"availability": "{% if v.available %}https://schema.org/InStock{% else %}https://schema.org/OutOfStock{% endif %}"
}
}
</script>
Eklemeden sonra Google’ın Zengin Sonuç Testi aracıyla birkaç ürün sayfasını kontrol edin. Fiyatın kuruş ayrımı doğru gelmiyorsa divided_by filtresinin ondalıklı sayıyla (100.0) kullanıldığından emin olun.
Değerlendirme yıldızları için aggregateRating alanı ancak sayfada gerçekten görünen değerlendirmeler varsa eklenmelidir. Görünmeyen değerlendirme verisiyle işaretleme yapmak yaptırım riski taşır.
Shopify sayfa hızı nasıl artırılır?
Shopify altyapısı hızlıdır; yavaşlığın kaynağı neredeyse her zaman tema ve uygulamalardır. Mağazaya kurulan her uygulama tema koduna kendi betiğini ekler ve bu betikler kaldırıldıktan sonra bile artık kod olarak temada kalabilir.
Uygulanabilir adımlar:
- Kullanılmayan uygulamaları kaldırın. Kaldırdıktan sonra temada kalan artık kodları arayın;
theme.liquidve şablon dosyalarında uygulama adıyla arama yapmak çoğu artığı ortaya çıkarır. - Ürün ve koleksiyon görsellerini Shopify’ın
image_urlfiltresiyle boyutlandırılmış şekilde çağırın; ızgarada 1200 piksellik görsel kullanmayın. - Ekranın ilk görünen bölümünün altındaki görsellere
loading="lazy"verin, ilk görünen alandaki ana görsele vermeyin. - Slider ve animasyon eklentilerini gözden geçirin. Ana sayfadaki otomatik geçişli büyük görsel alanları en sık karşılaşılan yavaşlık kaynağıdır.
- Üçüncü taraf yazı tiplerini azaltın, sistem yazı tiplerini veya tema içinde barındırılan tek bir aileyi tercih edin.
- Ölçümü mobil üzerinden yapın. Masaüstü skorları Türkiye’deki gerçek kullanıcı deneyimini yansıtmaz.
Ölçüm için PageSpeed Insights’ın saha verisi bölümüne bakın; laboratuvar skoru yerine gerçek kullanıcı ölçümleri karar için daha güvenilirdir.
Varyantlar ve stokta olmayan ürünler nasıl yönetilir?
Varyant seçimi Shopify’da ?variant= parametresiyle taşınır. Bu parametre canonical adrese girmediği için ayrı bir varyant sayfası oluşmaz. Sorun, aynı ürünün her renginin ayrı ürün kaydı olarak açıldığı mağazalarda çıkar: birbirinin neredeyse aynısı olan onlarca ürün sayfası, hem tarama bütçesini hem de sıralama gücünü böler. Renk ve beden farkları varyant olarak tanımlanmalıdır.
Satışı biten ürünlerde sayfayı silmek en kötü seçenektir çünkü sayfa dış link ve arama geçmişi taşıyor olabilir. Ürün kalıcı olarak listeden çıkacaksa, en yakın alternatife veya üst koleksiyona 301 yönlendirme kurun. Ürün mevsimlik olarak dönecekse sayfayı yayında bırakın, stok durumunu şemada OutOfStock olarak bildirin ve sayfada alternatif ürün önerileri gösterin.
Çok dilli mağazada dil ve ülke yapısı nasıl kurulur?
Shopify’ın yerelleştirme yapısı, aynı mağaza altında birden çok dil ve pazar tanımlamaya izin verir. Diller alt yol (/tr, /en) veya ayrı alan adı biçiminde yayımlanabilir. Doğru kurulduğunda Shopify her sürüm için hreflang etiketlerini kendisi üretir; tema koduna elle hreflang eklemek çakışmaya yol açar.
Türkçe ve İngilizce satış yapan bir mağazada dikkat edilecek noktalar şunlardır. Çeviri, otomatik çeviri çıktısı olarak bırakılmamalı, en azından koleksiyon metinleri ve ürün başlıkları elden geçirilmelidir. URL handle’ları da çevrilebilir; Türkçe sürümde kadin-canta, İngilizce sürümde womens-bags kullanmak her iki dilde de arama karşılığı olan adresler üretir. Para birimi ve fiyat yuvarlama kuralları pazar bazında ayrı tanımlanır; aynı fiyat listesini iki pazara birden bağlamak dönüşümü düşürür.
Blog ve iç link yapısı nasıl kurulur?
Blog, ürün ve koleksiyon sayfalarının hedefleyemediği bilgi amaçlı aramaları karşılar. Bir mobilya mağazasında “kanepe kumaş türleri” araması ürün sayfasıyla değil rehber içerikle karşılanır. Bu içeriklerin işlevi, ilgili koleksiyon sayfalarına iç link taşımaktır.
İç link kurarken bağlantı metni hedef sayfanın konusunu anlatmalıdır. Her blog yazısından ilgili koleksiyona en az bir bağlantı verin. Koleksiyon sayfalarından da ilgili rehber içeriklere bağlantı verilmesi, iki yönlü bir bağ kurar. Ana sayfadan en önemli koleksiyonlara doğrudan bağlantı bulunmalıdır; menüde dört tıklama derinliğinde kalan koleksiyonlar hem kullanıcı hem tarayıcı tarafından geç bulunur.
Yayına almadan önce kontrol listesi
- Parola koruması kapalı, mağaza erişilebilir durumda.
theme.liquidiçinde tek bir canonical satırı var ve{{ canonical_url }}kullanıyor.- Her koleksiyon ve ürün için benzersiz başlık ve meta açıklama girildi.
- Handle’lar ASCII karakterlerle, kısa ve okunur biçimde yazıldı.
- Site içi arama sayfaları dizin dışında.
- Ürün şeması tek kez üretiliyor, Zengin Sonuç Testi’nden geçiyor.
- Site haritası Google Search Console’a gönderildi.
- Göç varsa eski adresler için 301 yönlendirmeler aktif.
- Görsellerde alt metinler dolu.
- Mobil hız ölçümü yapıldı ve kaldırılabilir uygulamalar temizlendi.
Son güncelleme: 9 Eylül 2026 Yazan ve doğrulayan: Alaattin Çağıl, dijital pazarlama uzmanı ve Mayfair Digital Agency kurucusu. Kayseri’de faaliyet gösteren iş insanı Alaaddin Çağlıköse ile aynı kişi değildir. Mayfair Digital Agency resmî Shopify Partner’dır; 100’den fazla Shopify mağazası sıfırdan geliştirilmiş, 200’den fazla mağaza yönetilmiştir. Kaynaklar: Shopify Yardım Merkezi (SEO için anahtar kelime ve meta ayarları; sayfaları arama motorlarından gizleme), Shopify Liquid belgeleri (canonical_url), Shopify e-ticaret şeması rehberi. Tümü 9 Eylül 2026’da kontrol edilmiştir. Doğrulanabilir profil: shopify.com/partners/directory/partner/mayfair-digital-agency
İlgili rehberler
- Shopify ajansı seçimi: Teknik SEO işini kime vereceğinizi belirlemenin ölçütleri.
- Shopify uzmanı hizmetleri: Mağaza tarafında verilen teknik destek kapsamı.
- Shopify ve yerli platform karşılaştırması: Platform seçiminin arama görünürlüğüne etkisi.
- yapay zekâ aramalarında görünürlük: Cevap üreten sistemlerde kaynak olarak anılma mantığı.
- schema markup rehberi: Ürün ve kurum işaretlemesinin nasıl kurulduğu.
