Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] 2 języki na stronie
Forum PHP.pl > Forum > PHP
xlinksysx
Witam. Zamierzam zrobić moją stronkę w 2 językach. W jaki sposób mogę odróżnić czy kliknąłem przy wchodzeniu na stronę na polską flagę czy angielską? Jak proponujecie przechowywać informacje, aby skrypt rozróżnił jaki jest wybrany język i przy tym aby na każdej podstronie adres wyglądał identycznie (metoda GET odpada). Proszę o rady i propozycje.
pyro
Cytat(xlinksysx @ 18.05.2009, 16:32:38 ) *
Witam. Zamierzam zrobić moją stronkę w 2 językach. W jaki sposób mogę odróżnić czy kliknąłem przy wchodzeniu na stronę na polską flagę czy angielską? Jak proponujecie przechowywać informacje, aby skrypt rozróżnił jaki jest wybrany język i przy tym aby na każdej podstronie adres wyglądał identycznie (metoda GET odpada). Proszę o rady i propozycje.


Jak masz ikonki zmiany języka, to jedna niech bedzie jako odnosnik index.php?lang=pl, druga np. lang=en i przy kliknięciu za pomocą $_GET zapisujesz język w $_SESSION
kilas88
Stworzyć dwie subdomeny, przy czym każdą osobno pozycjonować na frazy dla danego języka. Dwa osobne adresy dla tej samej treści w dwóch różnych językach. Inaczej w wyszukiwarkach zrobi Ci się syf, lub będziesz mógł tylko na 1 język pozycjonować. Ważniejsze jest przemyślenie architektury witryny, a nie bezmyślne klepanie kodu. Pewnie, moża to zapisać w ciasteczkach czy sesji, ale to na dłuższą metę nie pociągnie.
okitoki
a co do rozpoznawania czy to polak czy nie polak, to takie info możesz odczytać choćby z adresu IP, jak ma przypisaną domenę, inny sposób przeglądarka wysyła to w nagłówku, jeszcze możesz korzystać z geoip

z jak robisz 2 strony to zrób je w oddzielnych katalogach www.xxxxxxx.pl/pl/ lub www.xxxxxxx.pl/en/ potem nie będzie z problemem to przerobić na mod_rewrite
nexis
Cytat(kilas88 @ 18.05.2009, 16:48:27 ) *
Stworzyć dwie subdomeny, przy czym każdą osobno pozycjonować na frazy dla danego języka (...) Inaczej w wyszukiwarkach zrobi Ci się syf, lub będziesz mógł tylko na 1 język pozycjonować.

Co za bzdura. Wiesz w ogóle o czym piszesz? Jest coś takiego jak deklaracja języka i to w zupełności wystarczy dla wyszukiwarek.

  1. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl" dir="ltr">


Cytat(okitoki @ 18.05.2009, 16:57:19 ) *
a co do rozpoznawania czy to polak czy nie polak, to takie info możesz odczytać choćby z adresu IP, jak ma przypisaną domenę, inny sposób przeglądarka wysyła to w nagłówku, jeszcze możesz korzystać z geoip

Zaleca się korzystać z preferencji ustawionych w przeglądarce, czyli nagłówka Accept-Language.
kilas88
Cytat(nexis @ 18.05.2009, 17:04:18 ) *
Co za bzdura. Wiesz w ogóle o czym piszesz? Jest coś takiego jak deklaracja języka i to w zupełności wystarczy dla wyszukiwarek.

  1. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl" dir="ltr">


Pewnie, że wiem o czym piszę. Wystarczy spojrzeć jak to wygląda w praktyce u najlepszych, na których sukcesie należy się wzorować, np.:

pl.wikipedia.org
en.wikipedia.org
br.wikipedia.org
et.wikipedia.org

A teraz pokaż mi mistrzu równie popularne i dobrze wypozycjonowane serwisy korzystające z deklaracji języka HTML czy formatowanych przy pomocy arkuszy stylów XSL, który byłby równie przyjazny dla wyszukiwarek, jak i dla użytkowników.

Poza tym zero użyteczności w serwisie, w którym język wybierany jest na podstawie języka przeglądarki. Ktoś chciałby skopiować znajomemu adres podstrony do tego serwisu, osoba ta miałaby ustawiony inny język albo zamieszkiwała inny kraj.. i dostałaby inną podstronę serwisu albo informację w stylu: "Dla twojego języka nie istnieje taka podstrona. Przeprowadź się do polski, by móc wyświetlić jej zawartość."
okitoki
Cytat(kilas88 @ 18.05.2009, 17:29:16 ) *
Pewnie, że wiem o czym piszę. Wystarczy spojrzeć jak to wygląda w praktyce u najlepszych, na których sukcesie należy się wzorować, np.:

pl.wikipedia.org
en.wikipedia.org
br.wikipedia.org
et.wikipedia.org

A teraz pokaż mi mistrzu równie popularne i dobrze wypozycjonowane serwisy korzystające z deklaracji języka HTML czy formatowanych przy pomocy arkuszy stylów XSL, który byłby równie przyjazny dla wyszukiwarek, jak i dla użytkowników.

Poza tym zero użyteczności w serwisie, w którym język wybierany jest na podstawie języka przeglądarki. Ktoś chciałby skopiować znajomemu adres podstrony do tego serwisu, osoba ta miałaby ustawiony inny język albo zamieszkiwała inny kraj.. i dostałaby inną podstronę serwisu albo informację w stylu: "Dla twojego języka nie istnieje taka podstrona. Przeprowadź się do polski, by móc wyświetlić jej zawartość."


mistrzu smile.gif wszystkie są popularne czyli (pl.xx.pl, en.xx.pl), (www.xx.pl, www.xx.us), (ww.xx.net/pl/, ww.xx.net/en/), (ww.xx.net/?lng=pl, ww.xx.net/?lng=en). a wiki, jest dobrze pozycjonowana bo to jest moloch treści i w nim to rozwiązanie jest dobre, na mniejszych stronach bym tego nie zalecał, ze względu na pozycjonowanie choćby. zalecam katalog lub mod_rewrite, bo parametr get nie elegancko wygląda
erix
Cytat
zalecam katalog lub mod_rewrite, bo parametr get nie elegancko wygląda

Ale dla pozycjonowania nie ma znaczenia, czy używasz query string, czy pseudokatalogów.

Odsyłam do bloga Google for Webmasters, była całkiem spora rozprawa na ten temat.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.