Multilanguage (vícejazyčný web)

Máte problém, hľadáte niečo? Opýtajte sa a poradíme...

Moderátor: Moderators

Používateľov profilový obrázok
puschpull
Expert
Expert
Príspevky: 112
Dátum registrácie: Št Mar 19, 2009 9:31 am
Bydlisko: Czech Republic - Most
Kontaktovať používateľa:

Multilanguage (vícejazyčný web)

Príspevok od používateľa puschpull »

Zdravím po delší dobe ... a hned s dotazem:

Mám fungující web (malý, 6 stran, horizontální navigace ...)
Potřebuji k tomuto webu přidělat v podstatě "zrcadlo", kam pak nakopíruji anglické texty
a potřebuji samozřejmě ošetřit navigaci

Je na to nějaký postup, který by vše maximáolně zjednodušil (také pořád zápasím s volným časem, ale toto musím do Vánoc udělat)

Díky za každý dobrý nápad
:-)
----------------------------
http://puschpull.org
:-)
Používateľov profilový obrázok
Marek Adamec
Medium Star
Medium Star
Príspevky: 246
Dátum registrácie: Pi Dec 28, 2007 7:58 pm
Bydlisko: Dubnica nad Váhom
Kontaktovať používateľa:

Re: Multilanguage (vícejazyčný web)

Príspevok od používateľa Marek Adamec »

Ja si chcem tiez prerobit svoju osobnu web stranku do 2 jazykov a budem to riesit takto ale az na novej domene:
www.marekadamec.sk to ma automaticky prelinkuje na www.marekadamec.sk/sk/index.html pri prepinani jazyku bude web prepinat medzi
www.marekadamec.sk/sk/index.html a
www.marekadamec.sk/en/index.html

To znamena ze budem mat 2 weby.
Používateľov profilový obrázok
_rasel^
ETOMITE Admin
ETOMITE Admin
Príspevky: 1122
Dátum registrácie: Ut Sep 20, 2005 1:03 am
Bydlisko: Košice (SR)
Kontaktovať používateľa:

Re: Multilanguage (vícejazyčný web)

Príspevok od používateľa _rasel^ »

Ahoj, už som prepisoval kód jadra, ale to je cesta do pekla, pretože je potrebné riešiť príliš veľa súvislostí... konečne ma napadlo vhodné a pritom veľmi jednoduché riešenie! :D (maskovanie a automatické prepisovanie adries s lomítkom)

Funkčnosť, príklad: ako alias dokumentu uvedieš sk_moj-clanok, tak znak "_" v snippetoch nahradí funkcia str_replace za znak "/", čiže v menu sa bude nachádzať odkaz na dokument sk/moj-clanok. Po zadaní adresy zasa spätne (na pozadí) .htaccess prekonvertujte na sk_moj-clanok, aby index.php?q=sk_moj-clanok s parametrom, aby sa článok mohol zobraziť.

Ak si to chceš len tak na rýchlo vyskúšať, tak úplne stačí ak na hosting uložíš .htaccess s obsahom dole a v Etomite vytvoríš nejaký dokument, v jeho aliase uvedieš znak "_" (podčiarnik bez úvodzoviek) a potom k tomu dokumentu zadáš url adresu s lomítkom, čiže tvar namiesto podčiarnika (podčiarnik môžeš použiť v rámci aliasu len raz a pred a za ním sa musí nachádzať aspoň jeden znak). Ak sa ti zobrazí len text dokumentu bez grafiky, tak je to kvôli dôvodu nižšie.

Úprava šablóny a je potrebná z toho dôvodu, aby sedela cesta k súborom (keďže prehliadač nevie o tom, že lomítko je len virtuálne a bude súbory hľadať realitívne) a úprava snippetov, aby bola lomítkova varianta url adresy v prípade použitia podčiarnika v aliase generovaná automaticky.

Súbor .htaccess je potrebné upraviť na:

Kód: Vybrať všetko

# URL rewriting for Etomite CMS
# Last Modified: 2006-03-30 by Ralph Dahlgren
#
# You must be running on Apache mod_rewrite to use this.
# Remember, you must rename this file to .htaccess
#
Options +FollowSymlinks
RewriteEngine On
# Ak sa instalacia Etomite nachdza v priecinku, tak je potrebne zadať RewriteBase /priecinok
RewriteBase /

# Exclude /assets and /manager directories and images from rewrite rules
RewriteRule ^(assets|install|manager|templates)($|/) - [L]
RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L]

RewriteRule ^(.*)/(.*)([^/])/?$ index.php?q=$1_$2$3 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Vo svojich templatoch, všade kde sa nachádzajú odkazú na lokálne css súbory, obrázky, alebo iné odkazy v rámci domény je potrebné zmeniť na absolútne, stačí do riadku pridať snippet [(www_base_path)], príklad:

Kód: Vybrať všetko

<link rel="stylesheet" type="text/css" href="[(www_base_path)]templates/default/main.css" />
Je potrebné upraviť snippety, ktoré vytvárajú menu, aby odkazovali na správne súbory, napr. snippet [[ListMenu]][/b], upraviť na riadky dole (ide iba o prepis znaku "_" na znak "/"):

Kód: Vybrať všetko

$childrenList = $etomite->getActiveChildren($geneology[$geneCount], $sortString, null,'id, alias, pagetitle, longtitle, parent, isfolder, description');
$childItem['alias'] = str_replace("_", "/", $childItem['alias']);
$currentLevelList .= '<a href="'.$etomite->config['www_base_path'].$childItem['alias'].'" title="' . $linkTitle .'">';
Ešte bude potrebné napísať snippet na prepínanie jazykových verzií...
..:: Etomite CMS → Rulezzz !.!.!. ::..
Používateľov profilový obrázok
puschpull
Expert
Expert
Príspevky: 112
Dátum registrácie: Št Mar 19, 2009 9:31 am
Bydlisko: Czech Republic - Most
Kontaktovať používateľa:

Re: Multilanguage (vícejazyčný web)

Príspevok od používateľa puschpull »

zajímavé
Děkuji !
Musím si najít čas na vyzkoušení tohoto cos napsal.
:)
----------------------------
http://puschpull.org
:-)
Napísať odpoveď