lostyazilim

.htaccess /tr/ gibi dile göre yönlendirme.

4 Mesajlar 4.265 Okunma
lstbozum
wmaraci reklam

opyan opyan WM Aracı Kullanıcı
  • Üyelik 10.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Web tasarım
  • Konum Tekirdağ
  • Ad Soyad M** G**
  • Mesajlar 67
  • Beğeniler 15 / 8
  • Ticaret 0, (%0)
merhaba arkadaşlar

yeni bir sayfa yapmak istiyorum ve daha ilk başta seo çalışmalarını yapmak istiyorum.

şidmi benim sayfama gelen ziyaretçiyi ben browserin diline göre ayırmak istiyorum mesela browser dili ingilizce ise siteye girince site.com/en/ gibi bir adrese yönlenmesini istiyorum türkçeyse site.com/tr/ gibi fakat burda şimdi sanal olarak .htaccess ten yarattığım bu uzantıların altında gerçekten dopsyalarım mı olmak zorunda bu konuda bana yardımcı olabilecek arkadaslar olursa gerçekten sevinirim.

yalnız birde şu sorun ile karşılaştim mesela azerbaycandan bir arkadaşım denemek için yazdığım siteye girince site.com/ru/ oldu yani arkadaşın browseri rusça olduğu için rusça sandı böyle bile olsa bu uzantıyı sitedeki dillerden az ye tıklayınca site.com/az yapabilirmiyiz .htaccess devre dışı bırakıp?

Off arkadaşlar yardım lütfen.
 

 

wmaraci
reklam

Ertug Ertug WM Aracı Kullanıcı
  • Üyelik 21.09.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek Yazılım geliştiricisi
  • Konum Ankara
  • Ad Soyad E** K**
  • Mesajlar 361
  • Beğeniler 51 / 43
  • Ticaret 0, (%0)
.htaccess' e gerek yok. tr ve en klasörleri dışında ana dizinde index.php oluştur. htaccess ten ana sayfayı index.php olarak belirle. Ve index.php dosyasının içeriğini şöyle yap:

$dil = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
if($dil == "tr")
{
header("Location: /tr/");
}
elseif($dil == "en")
{
header("Location: /en/");
}
else
{
// varsayılan dil
header("Location: /tr/");
}


Ek Olarak: en tr gibi dosyalara da sitenin çevrilmiş halini at. En basit yol bu. Bunun dışında tek dizinle de yapabilirsin ama uzun sürer. Ve karışıktır. Altından kalkamayabilirsin. GET metodu ile alınan dil bilgisine göre çerez oluşturucaksın. Sonra çerezlerde dil hangisiyse ona göre bir dil dosyası çağırıcaksın. en ise en dil dosyasını tr ise tr dosyasını mesela. Ve dil dosyalarındaki değişkenlerin adı aynı, stringler farklı dillerde olacak. Sitede bir şey yazdıracağın zaman değişkenleri kullanıcaksın vs. vs. Biraz yoğun olmasaydım daha net açıklamaya çalışırdım.
 

 

[freenodeIRC]
PHP = #laravelTurkiye
C++ = #qtTurkiye
Python = #pythonium

Shrikeen Shrikeen Frontend Developer Kullanıcı
  • Üyelik 24.06.2011
  • Yaş/Cinsiyet 34 / E
  • Meslek Front End Developer
  • Konum İstanbul Avrupa
  • Ad Soyad F** Ş**
  • Mesajlar 2933
  • Beğeniler 745 / 744
  • Ticaret 60, (%100)
Böyle birşeye benimde ihtiyacım var. Biri detaylı bir açıklama yaparsa iyi olur.
 

 

opyan opyan WM Aracı Kullanıcı
  • Üyelik 10.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Web tasarım
  • Konum Tekirdağ
  • Ad Soyad M** G**
  • Mesajlar 67
  • Beğeniler 15 / 8
  • Ticaret 0, (%0)

XGames adlı üyeden alıntı

Böyle birşeye benimde ihtiyacım var. Biri detaylı bir açıklama yaparsa iyi olur.


böyle bişeyi yapıp burda paylaşıcam hocam. şu an çoklu dil sistemini gettext kullanarak yapıyorum aynı wordpress gibi şu an buraya kadar sorun yok dil sistemi hazır fakat seo açısındanda sayfayı güçlendirmek istiyorum google sıralamasına sitenin amacı itibari ile ihtiyacım olmasada yinede güncel teknolojiyi kullanmakta fayda var.
 

 

wmaraci
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al