Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [CodeIgniter][CI] Problem z obsługą języków
Matey
post 21.08.2011, 16:17:22
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.06.2011

Ostrzeżenie: (0%)
-----


Witam kolegów...

Zgłębiam aktualnie CodeIgnitera wszystko toczyło się gładko do czasu go chciałem wprowadzić obsługę wielu języków. Zainstalowałem potrzebne biblioteki rozszerzajcie podstawowe funkcje - chodzi tu o obsługę języków w domenie. I teraz napotkałem taki problem -> CI nie rozpoznaje jezyka automatycznie... ominąłem to stosując w kontrolerze...
  1.  
  2. #sprawdzam język ustwiony
  3. echo $jez_ustawiony = $this->lang->lang();
  4.  
  5. #instancja obiektu
  6. $ci=& get_instance();
  7.  
  8. #pobieram adres url
  9. echo $uri = $ci->uri->uri_string();
  10.  
  11. #rozszerzyłem nieco tą metodę i zwraca mi język z url
  12. echo $jezyk = $this->lang->has_language($uri, TRUE);
  13.  
  14. #zmiana w przypadku różnicy
  15. if($jezyk != $jez_ustawiony)
  16. {
  17. $this->config->set_item('language', $jezyk);
  18. }


To tylko obiegniecie problemu ... bo CI z owymi bibliotekami powinien wykrywać język "sam" czy nie mam racji ? Niestety nie bardzo mogę go do tego skłonić...
Dodatkowo czy można jakoś w prosty sposób generować linki do tej samej treści z zmienionym członem językowym ?

Proszę o pomoc lub kontakt użytkowników z doświadczeniem w CI
Pozdrawiam

Ten post edytował Matey 21.08.2011, 16:22:54
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
adbacz
post 25.08.2011, 11:07:50
Post #2





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


Piszesz o "obsłudze języków w domenie". Co rozumiesz przez to pojęcie?

Z tego co wiem, to mozna na kilka sposobów to rozwiązać. Np, zrobic własny, główny kontroler, po którym będziemy dziedziczyć wszystkie mniejsze i w nim w konstruktorze sprawdzać jaki język obsługuje przeglądarka użytkownika. Można też w tym kontrolerze sprawdzać adres URI, czy w odpowiednim miejscu (to już zależy od Ciebie) znajduje się skrót językowy. Np. pl.strona.com | en.strona.com LUB strona.com/pl | strona.com/en

Wszystko zależy od tego, jak sobie to wszystko rozpracujesz i jak Ci będzie łatwiej dostosować do swojego projektu.

Mam nadzieje, że o takie coś Ci chodziło, jeśli nie to napisz proszę bardziej konkretnie o co.

Ten post edytował adbacz 25.08.2011, 14:36:13
Go to the top of the page
+Quote Post
Matey
post 27.08.2011, 10:56:39
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.06.2011

Ostrzeżenie: (0%)
-----


Dziękuje pomogłeś mi bardzo. smile.gif Pozdrawiam!
Go to the top of the page
+Quote Post
vvolv
post 27.08.2011, 15:14:05
Post #4





Grupa: Zarejestrowani
Postów: 15
Pomógł: 5
Dołączył: 31.07.2011

Ostrzeżenie: (0%)
-----


Co do obsługi po adresie to polecam to http://codeigniter.com/wiki/URI_Language_Identifier/
Idąc dalej osobiście nie zalecam ustawiać języka na ten ustawiony w przeglądarce. Lepszym rozwiązaniem jest wyświetlenie jakiegoś panelu z wyborem języka i zapisanie tego np.: w cookie.
Go to the top of the page
+Quote Post
Matey
post 29.08.2011, 08:54:13
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.06.2011

Ostrzeżenie: (0%)
-----


Napisałem mała biblioteke która pobiera jezyk z url i ustawia jezyk globalny na tej podstawie. Chciałem się tylko skonsultować. Dziękuję bardzo smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:15