ugrás a tartalomhoz

SEO URL & Cookie

titanium · 2014. Júl. 22. (K), 16.57
Sziasztok!

SEO URL-eket használok, tehát a weblap felépítése így néz ki: www.domain.hu/oldal. A 'nyelv' nevű cookie határozza meg a weblap nyelvét. A $gyoker változóba kerül az oldal gyökér URL-je, az $oldal-ba az első paraméter, a $parameter-be a második. Ha az URL első részét csekkolom, pl. www.domain.com/en-nél:


if($oldal==’en’)
{
    setcookie(’nyelv’,’en’,time()+60*60*24*365*10);
    header('Location: /'.$gyoker);
}

akkor nincs gáz, viszont azt szeretném, hogy nyelvváltás után a kód visszairányítsa a usert arra az oldalra, amelyiken éppen volt, így ha a második paramétert is nézem, pl. www.domain.com/about/en-nél:


if($parameter==’en’)
{
    setcookie(’nyelv’,’en’,time()+60*60*24*365*10);
    header('Location: /'.$gyoker.'/'.$oldal);
}

akkor a nyelv csak azon az egy oldalon változik meg, amelyikről jött a user, tehát ha megnyit egy másik oldalt, azon is meg kell hívnia a nyelvváltoztatást kiváltó URL-t (www.domain.com/oldal/nyelv), hogy megváltozzon a nyelv.

Hogy lehetne megoldani, hogy rendesen működjön?

(Tudom, hogy jobb lenne külön URL-eken "tárolni" az egyes nyelvek oldalait, de most ezt a problémát szeretném megoldani, leginkább azért, mert nem értem, miért nem jó.)
 
1

Ha jól értem a problémát,

Hidvégi Gábor · 2014. Júl. 22. (K), 17.56
A cookie értékét be is olvasod valahol az oldal generálásakor?
2

Azt szeretném, hogy

titanium · 2014. Júl. 22. (K), 17.58
Azt szeretném, hogy nyelvváltás után ugyanarra az url-re kerüljön a user, amelyikről jött, ami meg is valósul, csak így a nyelvváltás valamiért csak arra az egy oldalra hajtódik végre, amit nem értek. Ha nem irányítom vissza arra az oldalra, ahonnan jött, akkor rendesen működik, tehát minden oldal nyelve megváltozik (a cookie értékétől függően includeolom a nyelvi fájlokat az indexben)
3

Tehát mondjuk magyar oldalon

Hidvégi Gábor · 2014. Júl. 22. (K), 18.20
Tehát mondjuk magyar oldalon vagy, átváltasz angolra, utána átmész egy másik oldalra, és magyar a szöveg?
4

igen

titanium · 2014. Júl. 22. (K), 18.22
igen
5

Két esetet tudok

Hidvégi Gábor · 2014. Júl. 22. (K), 18.26
Két esetet tudok elképzelni:
1, az oldal generálásakor mégsem veszed figyelembe a cookie-ban lévő változó értékét,
2, az oldal a gyorsítótárból jön (mivel ugyanazon az url-en van).
6

De ha nem irányítom vissza a

titanium · 2014. Júl. 22. (K), 18.32
De ha nem irányítom vissza a usert, akkor jól működik és akkor is ugyanazon az url-en van.

Ha nem lennének szép url-ek, hanem mondjuk domain.hu/?oldal=valami&nyelv=hu, és onnan irányítom domain.hu?oldal=valami-re a cookie bállítása után, akkor is ugyanazon az url-en van és mégis működik, mert a cookie értékének megfelelő nyelvi fájlt include-olom.
7

cookie path

szabo.b.gabor · 2014. Júl. 22. (K), 18.35
attól eltekintve, hogy nem jó ötlet cookie-ban tárolni a nyelvet, azért nem működik mert nem állítod be a cookie path-et.

ha megnézed vmi inspect tool-lal akkor ellenőrizheted is..
8

Köszi, ez volt az :)

titanium · 2014. Júl. 22. (K), 18.54
Köszi, ez volt az :) Azért van cookieban, mert nem egy nagy volumenű oldal, még db-t se használ, nincs regisztráció sem és így meg tudom jegyeztetni a user gépén a nyelvet. Vagy esetleg lenne más mód rá?
9

URL

szabo.b.gabor · 2014. Júl. 22. (K), 19.54
én mindenképpen az url-ben tárolnám. ha nem egy nagy volumenű oldal, akkor gondolom van 5 menüpont, nem tart semmiből megnézni, hogy most home,about-us,contact vagyunk-e vagy kezdolap,rolunk,kapcsolat

szopó lesz az is, hogy a google csak az alapértelmezett nyelvet fogja látni (ő nem fog neked kukikat küldeni)

valamint mi értelme van annak, hogy contact url-en bejön egy magyar nyelvű kapcsolat ürlap, vagy kapcsolat néven egy angol

mi értelme annak, hogy megnézem angolul a kapcsolat oldalt, elküldöm haveromnak Juan-nak e-mailben, neki meg megnyílik magyarul (ha mondjuk az a default)

vili? (:
10

ha a júzer meg nem akar

szabo.b.gabor · 2014. Júl. 22. (K), 19.58
ha a júzer meg nem akar szopni mindig a neki megfelelő nyelv kiválasztásával, akkor azt az oldalt fogja berakni bookmark-ba ami neki jó.

esetleg a kezdőlap lehet /hu /en és ha a gyökérre érkezik a júzer (/) akkor nyelvi beállítás alapján továbbdobod, vagy kiraksz egy gagyi előválasztót, vagy nem lesz /hu hanem a / az magyar gyökér lesz :D
11

jogos, köszi az 5leteket :)

titanium · 2014. Júl. 22. (K), 21.47
jogos, köszi az 5leteket :)