Şimdi Ara

tarayıcı diline göre otomatik yönlendirme

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
6
Cevap
0
Favori
1.011
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • arkadaşlar konuyu doğru yere mi açtım bilmiyorum ama işin içinden çıkamadığım bir konu var. Örnek vereyim. Şimdi ben japonyadayım ve orada kulladığım tarayıcı japonca face girdiğimde site otomatik japonca açılıyor. Türkiyeden girdiğimde ise türkçe. Şimdi benimde bir sitem var ve 10 tane alt domain açtım. en-uk, en-us, es-es, es-pa(panama) bu alt domainlere siteyi yükledim orjinal dillerinde şimdi adam panamadan girdiğinde es-pa.siteadi.com.tr gelmesini istiyorum. amerikadan girdiğin en-us açılmasını istiyorum otomatikman bunu nasıl yapabilirim. php ya da html yahut htaccess ile çözüm yolları var mı bu altdomainleri google tanıtım seo optimizasyonunu da yaptım tek yapamadığım bu



  • $_SERVER["HTTP_ACCEPT_LANGUAGE"] sana tarayıcıdan gelen dili verir. Örnek: tr, en-US. Bazen dil-ülke formatında oluyor. O zaman sadece ilk iki karakterini alabilirsin; substr($_SERVER["HTTP_ACCEPT_LANGUAGE"], 0, 2) bu sana sadece dili döndürür. Bu arada isset ile diziyi kontrol etmeyi unutma, her tarayıcı bu bilgiyi yollamayabilir.
  • çok teşekkür ederim. internetten baktım genelde dizin ya da sayfa yapısına göre var ama sub domain yapısına göre hiç örnek yok, yazdığın cevabı bir örnekleyebilirsen benim için ya da bu tarz bir şey ler yapmak isteyenler için faydalı olabilir
  • $_SERVER['HTTP_HOST'] ile kullanıcının girdiği host adını alabilirsiniz. Mesela tr.siteismi.com, en.sitesimi.com, de.siteismi.com.. Yine substr ile bu dizinin ilk iki karakterini alıp if ile kontrol ettirebilirsiniz.
  • Kodlarım da bir hata var sanırım yönlendirme yapamadım

    <?php
    function temizle($text, $limit=75)
    {
    $text = preg_replace('~[^\w]+~', '', $text);
    if(strlen($text) > 70) {
    $text = substr($text, 0, 70);
    }
    if (empty($text))
    {
    return time();
    }
    return $text;
    }

    $dil = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);

    if (temizle($dil) == 'trTR') {header("Location:http://siteadi.com/");}

    else if (temizle($dil) == 'enUS') {header("Location:http://en-us.siteadi.com");}

    else if (temizle($dil) == 'arTN') {header("Location:http://ar-tn.siteadi.com");}

    else if (temizle($dil) == 'arAE') {header("Location:http://ar-ae.siteadi.com");}

    else if (temizle($dil) == 'arEG') {header("Location:http://ar-eg.siteadi.com");}

    else if (temizle($dil) == 'arKW') {header("Location:http://ar-kw.siteadi.com");}

    else if (temizle($dil) == 'arIQ') {header("Location:http://ar-iq.siteadi.com");}

    else if (temizle($dil) == 'arDZ') {header("Location:http://ar-dz.siteadi.com");}

    else if (temizle($dil) == 'arLB') {header("Location:http://ar-lb.siteadi.com");}

    else if (temizle($dil) == 'arJO') {header("Location:http://ar-jo.siteadi.com");}

    else if (temizle($dil) == 'esPA') {header("Location:http://es-pa.siteadi.com");}

    else if (temizle($dil) == 'esCO') {header("Location:http://es-co.siteadi.com");}

    else if (temizle($dil) == 'esDO') {header("Location:http://es-do.siteadi.com");}

    else if (temizle($dil) == 'etEE') {header("Location:http://et-ee.siteadi.com");}

    else if (temizle($dil) == 'ltLT') {header("Location:http://lt-lt.siteadi.com");}

    else if (temizle($dil) == 'faIR') {header("Location:http://fa-ir.siteadi.com");}

    else if (temizle($dil) == 'kaGE') {header("Location:http://ka-ge.siteadi.com");}

    else if (temizle($dil) == 'viVN') {header("Location:http://vi-vn.siteadi.com");}

    else if (temizle($dil) == 'kyKG') {header("Location:http://ky-kg.siteadi.com");}

    else if (temizle($dil) == 'lvLV') {header("Location:http://lv-lv.siteadi.com");}

    else (header("Location:http://en.siteadi.comr");}
    ?>



    < Bu mesaj bu kişi tarafından değiştirildi efhialtes -- 21 Eylül 2017; 14:13:31 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.