PDA

Zobacz pełną wersję : Wielojęzyczność - osobne kategorie czy aliasy w menu



q3d
11-12-2017, 16:53
Konfiguruje serwis wielojęzyczny: polski, angielski, niemiecki. Wersja 3.8.1

Wydaje mi się, że skonfigurowałem wszystko poprawnie. Mogę przełączać się pomiędzy językami i prezentować treści w odpowiednim języku. Mam jednak następujący problem. W momencie gdy wyświetlam pozycję menu (Artykuły->Przegląd kategorii) Usługi i zmienią język na angielski to:
adres zmienia się na nazwa-domeny.pl/en/uslugi (http://nazwa-domeny.pl/en/uslugi)
i wyświetlane są artykuły z kategorii Usługi dla których język ustawiono na: wszystkie lub angielski. Wybranie artykułu powoduje zmianę adresu na nazwa-domeny.pl/en/uslugi/nazwa-artykulu-w-jezyku-angielskim (http://nazwa-domeny.pl/en/uslugi/nazwa-artykulu-w-jezyku-angielskim)

Razi mnie to polskie "uslugi" w adresie. Wolałbym by było to nazwa-domeny.pl/en/services (http://nazwa-domeny.pl/en/services) i nazwa-domeny.pl/en/services/nazwa-artykulu-w-jezyku-angielskim (http://nazwa-domeny.pl/en/services/nazwa-artykulu-w-jezyku-angielskim) dla artykułu.

Spróbowałem zrobić to nie poprzez alias tylko pozycję menu do specjalnie w tym celu utworzonej kategorii ale wtedy nada po zmianie języka na podstronie nazwa-domeny.pl/uslugi (http://nazwa-domeny.pl/uslugi) przechodzi na nazwa-domeny.pl/en/uslugi (http://nazwa-domeny.pl/en/uslugi)

Być może rozwiązbaniem byłoby skonfigurowanie tego tak by każdorazowo zmiana języka powodowała przejście na stronę główną danej wersji językowej. Można to tak skonfigurować?

moje
11-12-2017, 20:13
A masz dwa języki treści? I każdemu artykułowi przypisałeś odpowiedni język?

Gall Anonim
11-12-2017, 22:01
@q3d - coś namieszałeś - każdy język ma możliwość mieć swoje tytuły i swoje własne aliasy - więc gdzieś po drodze popełniłeś błąd.

zwiastun
11-12-2017, 23:13
Jest równolegla struktura kategorii?

q3d
14-12-2017, 10:09
Dziękuje za sugestie.
Mam tak:
Rozszerzenia->Dodatki
System - Filtr języków (włączony)
System - Kod języka (włączony)
Powyższe na domyślnej konfiguracji

Rozszerzenia->Moduły
Przełącznik języka (opublikowany)

Menu
Main menu (ikona z domkiem)
Main menu (pl) (ikona flagi)
Main menu (en) (ikona flagi)
Main menu (de) (ikona flagi)

Main menu (ikona z domkiem) mam dodane pozycje menu w tym Usługi (Artykuły » Jedna kategoria artykułów - przegląd)
Main menu (pl) mam dodane pozycje menu będące aliasami pozycji z Main menu (ikona z domkiem).
I właśnie o to mi chodzi. Czy w tym menu (oraz de i en) pozycje menu powinny być aliasami czy też powinny być typu Artykuły » Jedna kategoria artykułów - przegląd, która to kategoria będzie np. dla en nazywała się Services i będą do niej przypisane artykuły w języku en.

Testowałem zarówno jedno jak i drugie rozwiązanie tylko, że w obu przypadkach działa to u mnie dziwnie.

1) W przypadku aliasów:
Na stronie nazwa-doemny.pl/uslugi gdy kliknę na fladze en ładowana jest strona: en/uslugi i prezentowane artykuły w języku en przypisane do kategorii Usługi (w jednej kategorii Usługi są artykuły zarówno pl jak i en,de). Czyli prawie dobrze tylko to /en/uslugi mi nie pasuje bo powinno być en/services

2) W przypadku Artykuły » Jedna kategoria artykułów
Na stronie nazwa-doemny.pl/uslugi gdy kliknę na fladze en ładowana jest strona: en/uslugi i brak artykułów (bo są w kategorii Services). Dopiero po kliknięciu na pozycji menu (które zmienia się na angielskie) Services ładowana jest strona en/services i prezentowane artykuły z tej kategorii.


Jest równolegla struktura kategorii?
No właśnie czy dla wersji wielojęzycznej należy dla każdej kategorii tworzyć jej odpowiedniki w danym języku i do tej kategorii przypisywać odpowiedniki artykułów, a następnie tworzyć menu dla danej wersji językowej w oparciu o te kategorie. Czy też w obrębie jednej kategorii należy tworzyć wersje językowe, a pozycje menu tworzyć jako aliasy pozycji głównej?

Obecnie szukając optymalnego rozwiązania mam zarówno równoległe kategorie a w nich artykuły w wersjach językowych i wtedy jako pozycję menu wybieram Artykuły » Jedna kategoria artykułów jak również artykuły w różnych wersjach językowych w jednej kategorii i wtedy jako pozycję menu Łącze systemowe -> Alias
Oba rozwiązania działają u mnie tak jak opisałem.

I może na koniec jeszcze inaczej sformułuje pytanie.
Czy da się to skonfigurować tak by będąc na stronie /uslugi po kliknięciu na fladze angielskiej pojawiłą się strona /en/services i jej treść w języku angielskim?
Jeżeli się da to czy należy to zbudować w oparciu o równoległa strukturę katalogów i pozycje menu typu Artykuły » Jedna kategoria artykułów?

siristru
14-12-2017, 10:38
Alias to takie przekierowanie do pozycji menu - nie powinieneś stosować tego w wersji wielojęzycznej.

U siebie zawsze robię tak, że jest jedna kategoria a w niej artykuły w wersjach językowych. Nie potrzeba powielać struktury kategorii dla każdego języka.
Joomla! sama filtruje które artykuły wyświetlić a które nie - ale muszą mieć przypisany język.
W menu struktury są skopiowane i linkują do tych samych kategorii.


Czy da się to skonfigurować tak by będąc na stronie /uslugi po kliknięciu na fladze angielskiej pojawiłą się strona /en/services i jej treść w języku angielskim?

Oczywiście, że tak. Do tego wcale nie jest potrzebna równoległa struktura.

Musisz mieć:

1. Menu osobne dla każdego języka
2. Pozycje w menu linkują do tej samej kategorii
3. Pozycje menu muszą być powiązane (pojawiają się ikonki literowe powiązanego języka)
4. Kategoria ma język ustawiony na "Wszystkie"
5. W kategorii masz artykuły z przypisanymi językami

W efekcie po kliknięciu flagi strona powinna się przeładować - zmienia się URL oraz wyświetlane są artykuły tylko w danym języku.

q3d
14-12-2017, 10:48
Ok. Spróbuje tak jak opisałeś. Nie mam jednak jasności odnoście punktu:
3. Pozycje menu muszą być powiązane (pojawiają się ikonki literowe powiązanego języka)

Jak to należy powiązać?

-------------------------------
OK Mam! Jest to jedna z zakładek w edycji pozycji menu.

No i chyba działa tak jak powinno :)

siristru
14-12-2017, 11:18
Zgadza się:

http://prntscr.com/hncfcm

Na liście powiązanie wygląda tak:

http://prntscr.com/hncfo7

A zakładka pojawia się tylko jeśli dodatek System - Filtr języków jest włączony, oraz ta opcja jest na TAK:

http://prntscr.com/hncg76

q3d
14-12-2017, 11:26
Zgadza się i działa :)
W sumie to przystępując do tworzenia wersji wielojęzycznej serwisu zastanawiałem się w jaki sposób realizowane jest powiązanie pozycji menu. Nie zwróciłem uwagi, że tam jest taka zakładka Powiązania i dlatego kombinowałem z aliasami jako sposobem powiązania.
Dziękuje!