• 06-05-2025, 00:42:14
    #1
    Çözümlendi: https://www.r10.net/1089197148-post9.html

    Herkese Merhaba,

    Çözüme kavuşturamadığım bazı sorularımı sizlerle paylaşmak istiyorum. Fikir alışverişi yapmak yararlı olabilir herkes faydalanabilir.

    Dostlar aşağıdaki gibi 3 adet ayrı ayrı kurulmuş WordPress sitelerim mevcut.

    Yılların tecrübesi olarak dil eklentileri kullanmıyorum ve karşıyım.
    Önce ingilizce sayfamızı yaptık ortalama 800 - 900 sayfası bulunuyor.

    Sonra İngilizce sitemizi çevirmenler aracılığıyla Türkçe ve Almanca olarak hepsini kopyalayarak oluşturup tüm sayfaları AYRI AYRI girişlerini yaptık
    Title descriptionlara kadar herşey çevrildi ve özenle girişleri yapıldı.


    İngilizce: alanadim.com
    Türkçe: alanadim.com/tr/
    Almanca: alanadim.com/de/

    Gelelim sorulara siz olsaydınız nasıl yapardınız?

    1- Ana dizinde yani alanadim.com ingilizce sitemde tek robots.txt kullanıyorum.
    robots.txt dosyamda aşağıdaki şekilde tanımlı.

    Sitemap: https://alanadim.com/sitemap_index.xml
    Sitemap: https://alanadim.com/tr/sitemap_index.xml
    Sitemap: https://alanadim.com/de/sitemap_index.xml

    Her site search console da ayrı ayrı eklendi.
    Türkçe ve Almanca sitede robots.txt lerin içi boş zaten search console da "Yalnızca kök düzeyindeki mülklerde kullanılabilir" kullanıldığı için ayrıca robots.txt leri her mülk için tanımlamaya gerek olmadığını düşünüyorum.
    Sizce bu durum doğru mu? robots.txt ler her dilde olmalı mı?

    2- Belkide en zor soru bu siz olsanız ne yapardınız?
    Ayrı ayrı 3 site olduğu için hreflangları doğru tanımlayamıyorum.

    Alttaki manuel ayrı ayrı 3 sitemin ana sayfasına ekleyebiliyorum ama blog ya da diğer sayfalarımada eklemem gerekiyor.

    <link rel="alternate" hreflang="en" href="https://alanadim.com/" />
    <link rel="alternate" hreflang="tr" href="https://alanadim.com/tr/" />
    <link rel="alternate" hreflang="de" href="https://alanadim.com/de/" />

    Dillerde Sluglar farklı olduğu için işin içinden çıkamadım.

    Örnek: Merhaba adında bir sayfam var. Sluglar farklı ben bunları hreflang olarak siteye ayrı ayrı nasıl tanımlayacağım


    https://alanadim.com/hello/
    https://alanadim.com/tr/merhaba/
    https://alanadim.com/de/hallo

    hreflang.xml yapıp 3 sitenin xml ini cronjob ile match etsem sitemap yüklesem problem çözülür mü emin olamadım :S

    6 x 3 = 18 sitemap var

    Not: Maalesef site ismi veremiyorum üzgünüm
    Ayrıca 3 siteyi bu şekilde kullanmak istiyorum subdomain kullanmak istemiyorum.
    Bu sebeple lütfen eklenti önermeyiniz.
    Ayrıca ücretli bir arayışım yok fikir alışverişi yapmak için bu konuyu açtım.

    Sevgiler.
  • 06-05-2025, 00:43:30
    #2
    Hocam merak ettiğim konu şu. WPML veya Polygan ile yapıyorum ben genelde dil çevirisini. Bunun tam olarak nasıl bir eksisi olduğunu düşünüyorsunuz?
  • 06-05-2025, 00:57:04
    #3
    Hocam eklenti istemiyorsun, ücretli bir arayışınız yok fikir istiyorsunuz... en başta farklı wordpressler kurmanız hata... çok basit bir ekklenti ile bir iki gün haşır neşir olup öğrenseydiniz keşke hocam, bu şekilde seo olmaz, istemediğin yerden fikir vereceğim çünkü başka alternatif yok, ben olsam local hostta tek bir wordpress kurup dil eklentisi üç dilden oluşturmak olurdu, zaten otomatik eşleştirme ile istediğiniz href link yapısı otomatik geçişi tasarıyıcı diline göre veya buton ile sağlanıyor, kodlamalarda buna göre otomatik değişiyor, projeniz önemli ise ve her sayfanın diğer dillerde karşılığı var ise 1-2 haftada birleştirirsiniz ve istediğinizi elde edersiniz. Alternatif olarak tek tek şu sayfanın ingilizce linki şu diye tek tek uğraşacağınıza birleştirmek ile uğraşın en azından sonrasında kafanız rahat olur, bu sayede analiz ve search console tek bir noktadan yönetilebilir olur.
  • 06-05-2025, 00:58:25
    #4
    Merhaba, dil yapınızı farklı dizinlere ayrı şekilde kurmanızı doğru kabul edebiliriz, fakat uygulamalarınız tamamı ile yanlış. en son belirttiğiniz şekilde xml ile match ederseniz sorunun bir kısmı düzelmiş olur fakat herhangi bir url ye girişte 900url*3dil= 2700 slug karşılaştırması sitenizi kastıracaktır. Eklentiye çevirseniz bu sefer tüm slugları tanımlamanız gerekecek ve oda kastıracak. iş baştan yanlış.
  • 06-05-2025, 01:06:23
    #5
    dijitalartiz adlı üyeden alıntı: mesajı görüntüle
    Hocam merak ettiğim konu şu. WPML veya Polygan ile yapıyorum ben genelde dil çevirisini. Bunun tam olarak nasıl bir eksisi olduğunu düşünüyorsunuz?
    Değerli yorumun için teşekkürler.

    Business sitelerde eklenti kullanmak pek problem (5-10 sayfalı siteler) çıkartmayabilir. Ancak yüksek trafikli ayrıca sayfa sayısı çok fazla (1000-5000 indexi) olan siteler için bu pekte mantıklı değil şöyle örnek verebilirim.

    Örnek blogunda 300 içerik var 3 dilde çeviri yaptın eklentiler ile toplamda 900 içerik..
    Veritabanında wp_posts tablosunda 900 satır!
    wp_postmeta tablosunda 10 meta tutsa 9000 kayıt!

    Diğer tabloları saymıyorum örneğin Devamı, Read more vs..

    Veritabanına inanılmaz bir yük biner her sorgu sunucuyu inanılmaz yorar.
    Ayrıca optimizasyon konusunda bazı büyük projelerde veritabanı lokasyon olarak farklı sunucularda çalıştırmamız gerekebiliyor.

    Bu örnek çoğaltılabilir.. geçmiş tecrübeler diyelim..
  • 06-05-2025, 01:30:32
    #6
    VektorMedya adlı üyeden alıntı: mesajı görüntüle
    Hocam eklenti istemiyorsun, ücretli bir arayışınız yok fikir istiyorsunuz... en başta farklı wordpressler kurmanız hata... çok basit bir ekklenti ile bir iki gün haşır neşir olup öğrenseydiniz keşke hocam, bu şekilde seo olmaz, istemediğin yerden fikir vereceğim çünkü başka alternatif yok, ben olsam local hostta tek bir wordpress kurup dil eklentisi üç dilden oluşturmak olurdu, zaten otomatik eşleştirme ile istediğiniz href link yapısı otomatik geçişi tasarıyıcı diline göre veya buton ile sağlanıyor, kodlamalarda buna göre otomatik değişiyor, projeniz önemli ise ve her sayfanın diğer dillerde karşılığı var ise 1-2 haftada birleştirirsiniz ve istediğinizi elde edersiniz. Alternatif olarak tek tek şu sayfanın ingilizce linki şu diye tek tek uğraşacağınıza birleştirmek ile uğraşın en azından sonrasında kafanız rahat olur, bu sayede analiz ve search console tek bir noktadan yönetilebilir olur.
    Merhaba, değerli yorumun için teşekkürler.

    Eleştirel bakış açını anlayabiliyorum. Komplike projelerde maalesef işler bu şekilde yürümüyor. Amacım yukarıdaki seneryo doğrultusunda meslektaşlarımla fikir alışverişleri yapmak ister belli belkide bu durumu çözebileceğimiz fikir alışverişlerinde bulunursak bunu ayrıca birine yaptırma kararı alırsak ticaret bölümüne ücretli destek diye bir konu açarız ama bizim konumuz bunların çok dışarısında.

    Mesela böyle seneryoda bir müşteri geldi ne yapardın? bu sistemi komple değiştirmeyi mi önerirdin?
    Sana gelen müşteri

    İngilizce sitesini: https://alanadim.com - UK de bulunan sunucusunda
    Türkçe sitesini: https://alanadim.com/tr/ - TR de bulunan sunucusunda
    Almanca sitesini: https://alanadim.com/de/ - NL de bulunan sunucusunda

    Ayrıca veritabanını 10 eş parçaya bölmüş onlarıda ayrı sunucularda barındırıyorsa?

    Bu seneryo ile önerin ne olurdu?
  • 06-05-2025, 01:46:26
    #7
    roxside adlı üyeden alıntı: mesajı görüntüle
    Merhaba, değerli yorumun için teşekkürler.

    Eleştirel bakış açını anlayabiliyorum. Komplike projelerde maalesef işler bu şekilde yürümüyor. Amacım yukarıdaki seneryo doğrultusunda meslektaşlarımla fikir alışverişleri yapmak ister belli belkide bu durumu çözebileceğimiz fikir alışverişlerinde bulunursak bunu ayrıca birine yaptırma kararı alırsak ticaret bölümüne ücretli destek diye bir konu açarız ama bizim konumuz bunların çok dışarısında.

    Mesela böyle seneryoda bir müşteri geldi ne yapardın? bu sistemi komple değiştirmeyi mi önerirdin?
    Sana gelen müşteri

    İngilizce sitesini: https://alanadim.com - UK de bulunan sunucusunda
    Türkçe sitesini: https://alanadim.com/tr/ - TR de bulunan sunucusunda
    Almanca sitesini: https://alanadim.com/de/ - NL de bulunan sunucusunda

    Ayrıca veritabanını 10 eş parçaya bölmüş onlarıda ayrı sunucularda barındırıyorsa?

    Bu seneryo ile önerin ne olurdu?
    Hocam üzgünüm bu kaosa müşterim olmayan birine kafa yormak istemiyorum ama basit bir şekilde düşününce aklıma ilk gelen şey müşteri ortak bir sisteme dönüştürmekten yana değilse, eklenti yapardım kafamda bir senaryo oluştu onu yapardım, o zaman href yapısı tek bir sistemmiş gibi davranabilir ve sayfalar bir birine eş olan diğer dildeki sayfalara link çıkabilirdi
  • 06-05-2025, 01:52:42
    #8
    Protex adlı üyeden alıntı: mesajı görüntüle
    Merhaba, dil yapınızı farklı dizinlere ayrı şekilde kurmanızı doğru kabul edebiliriz, fakat uygulamalarınız tamamı ile yanlış. en son belirttiğiniz şekilde xml ile match ederseniz sorunun bir kısmı düzelmiş olur fakat herhangi bir url ye girişte 900url*3dil= 2700 slug karşılaştırması sitenizi kastıracaktır. Eklentiye çevirseniz bu sefer tüm slugları tanımlamanız gerekecek ve oda kastıracak. iş baştan yanlış.
    Protex adlı üyeden alıntı: mesajı görüntüle
    Merhaba, dil yapınızı farklı dizinlere ayrı şekilde kurmanızı doğru kabul edebiliriz, fakat uygulamalarınız tamamı ile yanlış. en son belirttiğiniz şekilde xml ile match ederseniz sorunun bir kısmı düzelmiş olur fakat herhangi bir url ye girişte 900url*3dil= 2700 slug karşılaştırması sitenizi kastıracaktır. Eklentiye çevirseniz bu sefer tüm slugları tanımlamanız gerekecek ve oda kastıracak. iş baştan yanlış.
    Merhaba, değerli yorumun için teşekkürler diğer arkadaşlarada verdiğim cevaplar ile benzer yorumları yapmak istemiyorum. Aslında fikir alışverişlerinde yakınız fakat siz sunucuyu çok yoracağını düşünmüşsünüz. Bunun için ayrı bir sunucu konumlandırılabilir. Diğer yorumlarıda okuyup fikir alışverişimizi detaylandırabilir miyiz?
  • 07-05-2025, 21:49:49
    #9
    Merhaba,

    Bu konuyu şu şekilde sonlandırdık detayları aşağıda paylaşıyorum. Bu seneryo belki çözüm arayan farklı arkadaşlara yardımcı olacaktır.

    Web sitelerimiz ve isterlerimiz aşağıdaki gibiydi.

    İHTİYAÇ:
    1- EN,DE,TR olmak üzere 3 dilimiz var.
    2- 3 dil içinde ayrı ayrı WordPress kurulu. ( Dilerse farklı domainlerde olabilir. )
    3- Bu diller global dilleri konuşanları hedefliyor: en,de,tr | Regoin(bölge): desteği şu an önceliğimiz değil en-UK, en-US gibi hedefleme yapılabilirdi ancak bizim ihtiyacımız yok.
    4- Ayrı ayrı wp kurmamızın sebebi performans öncelikli olarak dağınık sunucularda web sitelerimizi barındırdığımız için.

    İngilizce: alanadim.com
    Türkçe: alanadim.com/tr/
    Almanca: alanadim.com/de/

    ÇÖZÜM:
    1- Performansı etkilemeyecek minik bir eklenti.

    2- Eklenen kayıtlar JSON dosyasında toplanıyor. Aşağıdaki gibi..
    [{"en":"https://alanadim.com/","de":"https://alanadim.com/de/","tr":"https://alanadim.com/tr/","x-default":"en"},{"en":"https://alanadim.com/contact-us/","de":"https://alanadim.com/de/kontaktieren-sie-uns/","tr":"https://alanadim.com/tr/bize-ulasin/","x-default":"en"}]
    3- Toplanan kayıtları URL bazlı eşleştirip ön yüze yani kaynak koduna ekliyoruz.
    <link rel="alternate" hreflang="x-default" href="https://alanadim.com/" />
    <link rel="alternate" hreflang="en" href="https://alanadim.com/" />
    <link rel="alternate" hreflang="de" href="https://alanadim.com/de/" />
    <link rel="alternate" hreflang="tr" href="https://alanadim.com/tr/" />
    4- Dil selector gibi bir sayfamız olmadığı için ingilizce sayfamızı heryerde x-default olarak işaretliyoruz.
    5- Sluglar farklı olduğu için en basit ve kolay eşleştirme bu şekilde yapılabiliyor. Bir kez eşleştirmeyi yaptıktan sonra JSON da tutuğumuz kayıtları de ve tr sitelerimize kopyalayabileceğiz.
    6- Başta siteler hazırlanırken hreflang kuralına dikkat edilmediği için bu şekilde çözüme gitmemiz gerekti.
    7- Bundan sonra eklenecek tüm içeriklerde kural listesine buraların doldurulması eklendi.

    SONUÇ:

    Test 1: https://app.hreflang.org/


    Test 2:



    Not: Bu geliştirme kendi isterlerimiz doğrultusunda hazırlandı. Geliştirilmeye açık yarın öbürgün daha stabil bir eklenti haline getirip paylaşım yapabilirim. Bizim gibi zorluk yaşayan çözüm arayan arkadaşlar varsa destek olmak isterim. Bu seneryonun farklı bir çözümünü çok fazla araştırsakta bulamadık en doğru yapı bu şekilde olduğunu düşünüyoruz ve kullanmaya başladık.

    Önerileriniz olursa birlikte geliştirmeler yapabiliriz.
    Sevgiler.