Paginasyon, kategori veya blog listesi gibi içerik kümelerinin birden fazla URL'ye bölündüğü yapıdır. Teknik SEO açısından bakıldığında paginasyon, hangi sayfanın dizine alınacağı, sayfalandırılmış içeriğin link değerini nasıl taşıdığı ve arama motorunun bir serinin parçalarını nasıl birbirine bağladığı sorularını beraberinde getirir. Bu sorular tek dilli bir sitede bile çözüme kavuşturulması gereken kararlardır. Çok dilli bir sitede her soru, her dil sürümü için ayrı ayrı yanıt bekler.
Konuyu karmaşıklaştıran bir etken, paginasyonla ilgili teknik rehberliğin yıllar içinde değişmiş olmasıdır. Google, 2019'da rel="next" ve rel="prev" direktiflerini artık dikkate almadığını duyurdu. Bu açıklamanın ardından birçok ekip paginasyon yönetimini tamamen görmezden geldi; oysa canonical kararları, hreflang uygulaması ve tarama bütçesi açısından sayfalandırılmış URL'ler hâlâ dikkat gerektiren bir alan olmayı sürdürüyor.
Çok dilli bir sitede paginasyonu göz ardı etmenin maliyeti daha yüksektir. Üç dilli bir katalog sitesinde 20 sayfalık bir kategori listesi, toplamda 60 URL anlamına gelir. Bu URL'lerin canonical ataması hatalı yapılmışsa ya da hreflang kümesi sayfa 1 dışındaki sayfaları kapsam dışı bırakmışsa, arama motorunun bu dil sürümlerini doğru yorumlaması güçleşir. Küçük kataloglarda bu etki sınırlıdır; büyük ölçekli çok dilli e-ticaret sitelerinde ise birikimli bir sorun haline gelir.
Sayfalandırılmış URL'lerde canonical: hangi sayfa yetkili sürümü gösterir?
Paginasyonlu içerikte canonical kararı iki farklı yaklaşımla kurulabilir. Birinci yaklaşım: her sayfa kendi canonical'ını taşır, yani sayfa 2 için canonical sayfa 2'nin URL'sine işaret eder. Bu "self-referencing canonical" olarak bilinir ve Google'ın önerdiği yöntemdir. Her sayfa ayrı bir URL olarak tanımlanır, bağımsız olarak dizine alınabilir ve kendi içeriğini temsil eder.
İkinci yaklaşım, özellikle eski CMS kurulumlarında sık karşılaşılır: tüm sayfalandırılmış URL'lerin canonical etiketi sayfa 1'e işaret eder. Bu yaklaşım teorik olarak "sayfa 1 en önemli sayfadır, diğerleri onun devamıdır" mantığını yansıtır; ancak uygulamada sayfa 2, 3 ve sonrasını Google'ın gözünde yinelenen içerik olarak işaretlemek anlamına gelir. Sayfa 3'te yer alan ürünler Googlebot tarafından taransalar bile dizine alınmazlar çünkü canonical "bu içerik sayfa 1'e aittir" mesajını verir.
Çok dilli bağlamda bu ikinci yaklaşımın etkisi daha da büyür. Çok dilli canonical yönetiminde temel kural, canonical etiketinin aynı dil sürümü içinde kalmasıdır. Almanca sürümün sayfa 3'ü için canonical, Almanca sürümün sayfa 1'ine işaret etmelidir — İngilizce sayfa 1'ine değil. Otomatik canonical üretiminin bu dil izolasyonunu gözetmediği CMS kurulumlarında, diller arası canonical kirlenmesi sessizce birikir.
Pratikte önerilen yapı şudur: her sayfalandırılmış URL kendi canonical'ını taşır, canonical etiket sayfanın kendi URL'siyle birebir eşleşir ve bu eşleşme her dil sürümü için ayrı ayrı geçerlidir. Bu yapı hem Googlebot'a her sayfayı bağımsız bir URL olarak tanıtır hem de hreflang uygulamasını anlamlı kılar.
rel="next" / rel="prev" kaldırıldı — ama paginasyon yönetimi kalkmadı
2019'daki duyurunun yanlış yorumlanması şu sonucu doğurdu: birçok ekip paginasyonu artık "çözülmüş bir sorun" olarak bıraktı ve ilgili teknik kararları gözden geçirmeyi bıraktı. Oysa direktiflerin kaldırılması yalnızca Google'ın bu özel sinyali okumayı bıraktığı anlamına geliyordu — paginasyonla ilgili diğer teknik sorunlar varlığını sürdürdü.
Canonical etiket ve robots meta etiketi hâlâ geçerli ve etkin sinyallerdir. Sayfalandırılmış URL'lerin dizine alınıp alınmayacağı, noindex kullanımının ne zaman mantıklı olduğu ve sitemap'e hangi paginasyon URL'lerinin dahil edileceği — bunların tamamı rel="next" direktifinden bağımsız olarak yönetilmesi gereken kararlardır.
Çok dilli bir sitede bu kararların hepsinin her dil sürümü için tutarlı biçimde uygulandığından emin olmak gerekir. İngilizce sürümde sayfa 2 ve sonrası için self-referencing canonical uygulanırken Türkçe sürümde sayfa 1'e işaret eden canonical varsa, iki dil sürümünün paginasyon davranışı birbirinden farklılaşır. Bu tutarsızlık tek başına büyük bir sorun gibi görünmeyebilir; ancak yüzlerce kategori ve onlarca sayfa derinliğinde çarpılınca önemli bir tarama belirsizliği üretir.
Hreflang paginasyonda nasıl kurulur?
Paginasyonlu sayfalarda hreflang uygulaması konusunda yaygın ama yanlış bir yaklaşım vardır: yalnızca sayfa 1 için hreflang tanımlamak ve diğer sayfalara hiç uygulamak. Bu yaklaşımın mantığı "asıl içerik sayfa 1'de, diğerleri ikincil" şeklindedir; ancak teknik olarak tutarsız bir sinyal üretir.
Eğer her sayfalandırılmış URL kendi canonical'ını taşıyorsa — yani self-referencing canonical kurulduysa — o URL için hreflang da uygulanmalıdır. Hreflang'ın doğru çalışması için her dil sürümündeki eşdeğer URL'lerin karşılıklı olarak birbirini işaret etmesi gerekir. Almanca kategori listesinin sayfa 3'ü, İngilizce kategori listesinin sayfa 3'üne hreflang ile bağlanmalıdır.
Bu bağlantının kurulmaması ne anlama gelir? Googlebot Almanca sayfa 3'ü taradığında hreflang bulamazsa, bu sayfanın İngilizce veya diğer dil sürümleriyle ilişkisini bilemez. Her dil sürümü için sayfa 3'ü ayrı bir içerik gibi yorumlayabilir. Büyük kataloglarda bu durum, dil sürümleri arasındaki organik trafik dağılımını olumsuz etkiler.
Pratik uygulama açısından en güvenli yaklaşım şudur: canonical self-referencing olan her URL için hreflang kümesi oluşturulur. Canonical başka bir URL'ye işaret eden sayfalarda hreflang uygulamak gereksizdir ve çoğunlukla yok sayılır. Bu kural, paginasyonlu sayfalarda canonical ve hreflang kararlarının birbiriyle bağlantılı olduğunu ve birinin doğruluğunun diğerini doğrudan etkilediğini gösterir.
Tarama bütçesi: dil sayısı ile sayfa derinliğinin çarpımı
20 kategori ve her kategoride ortalama 15 sayfalık bir paginasyon derinliği olan bir katalog, tek dilli yapıda 300 paginasyon URL'si üretir. Aynı katalog beş dil sürümüne yayıldığında bu sayı 1.500'e çıkar. Eğer sitemap bu URL'lerin tamamını içeriyorsa ve robots.txt ya da noindex ile herhangi bir kısıtlama yoksa, Googlebot bu 1.500 URL'yi tarama bütçesinden harcamak zorunda kalır.
Bu yükün tamamı gereksiz değildir; ürün sayfalarına ulaşmak için Googlebot'un paginasyonu takip etmesi gerekir. Sorun, paginasyon URL'lerinin sitemap'te listelenmesiyle başlar. Çok dilli sitemap yapısında sayfalandırılmış URL'lerin yer alması, Googlebot'u bu URL'leri doğrudan tarama önceliğine almaya yönlendirir. Oysa paginasyonun asıl işlevi içeriğe (ürün ya da makale sayfalarına) erişim yolu olmaktır; paginasyon URL'lerinin kendisi çoğunlukla birincil dizine alma hedefi değildir.
Tarama bütçesini daha verimli kullanmak için iki yaklaşım işe yarar. Birincisi: sitemap'e yalnızca sayfa 1'i dahil etmek, diğer sayfalandırılmış URL'leri sitemap dışında bırakmak. Googlebot bu URL'leri iç linkler aracılığıyla yine de bulur; ancak sitemap önceliğini taşımadan. İkincisi: sayfa 2 ve sonrası için noindex uygulamak. Bu daha güçlü bir kısıtlamadır; sayfalandırılmış URL'lerin dizine alınmasını engeller. Ancak bu tercihin doğruluğu katalogun yapısına bağlıdır — bazı durumlarda sayfa 2'deki içerikler gerçek arama niyetini karşılayabilir.
Çok dilli sitede bu kararların dil sürümleri arasında tutarsız uygulandığı durumlar sıkça görülür. İngilizce sürümde paginasyon URL'leri sitemap dışında tutulurken Almanca sürümde her sayfa sitemap'e eklenmiş olabilir. Bu tutarsızlık, dil sürümleri arasında tarama verimliliği farkı yaratır ve büyük sitelerde dikkat edilmesi gereken bir bakım kalemidir.
Platform farklılıkları: paginasyon URL yapısı ve kontrol seçenekleri
Shopify, paginasyon URL'lerini ?page=2 parametresiyle üretir. Shopify Markets ile çok dilli yapıda bu parametre dil prefixi veya subdomaini ile birleşir: /de/?page=2 ya da de.example.com/collections/shoes?page=2. Shopify bu URL'ler için otomatik canonical üretir; ancak canonical her zaman self-referencing değildir — bazı tema yapılandırmalarında sayfa 1'e işaret eden canonical görülebilir. Temadan temaya değişen bu davranışı doğrulamak için birkaç kategori sayfasının sayfa 2 ve 3'ünü elle kontrol etmek gerekir.
WordPress ile Yoast SEO veya Rank Math kullanan sitelerde paginasyon canonical yönetimi eklenti tarafından üstlenilir. Bu eklentilerin büyük çoğunluğu self-referencing canonical üretir; ancak WPML veya Polylang ile birlikte çalışırken dil sürümlerine göre canonical davranışı değişebilir. Özellikle blog arşivi paginasyonunda, çeviri sayfasının canonical'ının doğru dil sürümüne işaret ettiği doğrulanmalıdır.
Headless ve özel geliştirme ortamlarında paginasyon canonical kontrolü tamamen geliştirici ekibin sorumluluğundadır. Bu ortamlarda en sık yapılan hata, sayfa numarasının URL'de dinamik olarak değişmesine rağmen canonical etiketinin statik kalmış olmasıdır. Sayfa değiştiğinde canonical da güncellenmelidir; aksi halde tüm sayfalandırılmış URL'ler aynı canonical'ı taşır.
Çok dilli faceted navigation sorunlarıyla paginasyon kararları sıkça iç içe geçer. Filtre uygulandığında paginasyon da devreye girer: filtrelenmiş kategori sayfasının sayfa 2'si için hem filtre canonical kararı hem de paginasyon canonical kararı aynı anda geçerlidir. Bu iki kararın birbiriyle çelişmemesi için şablon mantığının önce filtre durumunu, ardından sayfa numarasını değerlendirmesi gerekir. Teknik SEO denetiminde bu ikili senaryonun ayrı bir test kalemi olarak ele alınması önerilir.
Paginasyon, arama motorlarına "bu liste burada bitmiyor" mesajını ileten teknik bir yapıdır. Bu mesajın dil sürümleri arasında tutarlı biçimde iletilmesi — canonical, hreflang ve sitemap kararlarının her sürümde uyumlu çalışması — büyük kataloglarda organik görünürlüğün sürdürülebilirliğini doğrudan etkiler.
Bu kararların büyük çoğunluğu CMS veya platform düzeyinde şablon olarak kurulur; tek tek sayfalara müdahale gerektirmez. Bir kez doğru yapılandırıldığında yüzlerce ya da binlerce sayfalandırılmış URL için otomatik olarak çalışır. Sorun genellikle bu kurulumun dil sürümleri arasında denetlenmemesinde yatar — ve bu denetim, rutin teknik SEO bakımının ayrılmaz bir parçası olmalıdır.