ugrás a tartalomhoz

Többnyelvűség

Castor87 · 2009. Okt. 7. (Sze), 08.31
Az aktuális nyelvet munkamenetben tárolom és a megfelelő zászlókkal(linkek) lehet módosítani. Ebben az esetben milyen módon oldható meg, hogy a keresők ne csak a default nyelvű tartalmat indexeljék? Vagy esetleg gond nélkül térképezik fel az összes nyelvet?
 
1

Használj inkább aldomaineket

Thoer · 2009. Okt. 7. (Sze), 09.24
az egyes nyelveknek, ha tényleg fontos, hogy több nyelven is indexelve legyen a tartalom.
2

SID

QXY · 2009. Okt. 7. (Sze), 09.27
Mivel a keresőrobot nem fog sütit tárolni ezért nem lesz munkamenet, se nyelv.
A megoldás az lehet, hogy az URL-ben átadod a session id-t, ha robot érkezik.
3

Nálam így néz ki

Tanul0 · 2009. Okt. 7. (Sze), 10.53
  1. //ha van nyelvvaltas kerelem      
  2. if(isset($_GET['nyelv'])) {  
  3.   
  4.     if(file_exists('nyelvek/'.$_GET['nyelv'])) {  
  5. //ha regisztralt user  
  6.         if($felhID) {  
  7.             $uj_nyelv = $_GET['nyelv'];  
  8.             lekerdez("UPDATE felh SET nyelv='".$uj_nyelv."' WHERE felhID='".$felhID."'");  
  9.             $atiranyit=explode("="$_SERVER['QUERY_STRING']);  
  10.             $uj_link=explode("&"$atiranyit[1]);  
  11.         }  
  12. //ha nem regisztralt, vagy nem lepett be  
  13.         else{  
  14. //beallitjuk a cookie-t  
  15.             setcookie("nyelv"$_GET['nyelv'], time()+(3600*60*60));  
  16.             $atiranyit=explode("="$_SERVER['QUERY_STRING']);  
  17.             $uj_link=explode("&"$atiranyit[1]);  
  18. //es a session is, ha a cookie nincs engedélyezve, azaz a robotok szamara.  
  19.                         $_SESSION['nyelv']=$_GET['nyelv'];  
  20.   
  21.         }  
  22.   
  23.     }  
  24. }  
  25.   
  26.   
  27. //nyelvbeallitas  
  28. if($bejelentkezve == false)   
  29. {  
  30. //ha van cookie akkor abból olvassuk ki  
  31.   if(isset($_COOKIE['nyelv']))   
  32.   {  
  33.     $_nyelv->nyelv($_COOKIE['nyelv']);  
  34.   }  
  35.     elseif( isset($_SESSION['nyelv']) )   
  36.   {  
  37.         $_nyelv->nyelv($_SESSION['nyelv']);  
  38.   }  
  39. }  
4

...

carstepPCE · 2009. Okt. 7. (Sze), 16.13
tarold GET parameterben es add meg a meta taget rendesen.

-cs-
Sanyi
5

Mindenképpen

gphilip · 2009. Okt. 7. (Sze), 16.46
Mindenképpen az aldomaint javaslom, igy a robot könnyebben el tudja különiteni az oldalakat tartalmilag, és nem keverednek a nyelvek azonos subdomainen belül.

Ha pl gettext-et vagy hasonló i18n megoldást használsz, akkor nincs más dolgotd, mint a subdomaint átadni paraméterként (többé-kevésbbé)
6

Köszi mindenkinek

Castor87 · 2009. Okt. 7. (Sze), 20.26
Végül beraktam az url-be a nyelvet mint első paraméter.