|
Разделы |
InternacionalizacePmWiki podporuje internacionalizaci webových stránek, umo¾òuje aby se v názvech stránek nacházeli znaky s diakritikou a témìø zcela lokálnì pøizpùsobilo systémové hlá¹ení PmWiki. Vìt¹ina tìchto pøizpùsobení se v PmWiki vyøe¹í funkcí XLPage(), která naèítá sadu pøekladových promìnných z wiki stránky (typicky pomenované XLPage, ale mù¾e se jmenovat i jinak). Naèítání stránek s pøeklademStránky pro mnohé jazyky jako francouz¹tina, nìmèina, holadn¹tina a ¹panìl¹tina u¾ jsou vytvoøené a udr¾ované na webové stránce pmichaud.com. Archiv tìchto pøekladù si mù¾ete stáhnout z (a vyberte si èeský balíèek, má ve jménì cs). Jednodu¹e rozbalte archiv do adresáøe obsahujícího va¹i instalaci pmwiki.php. Archiv obsahuje mno¾ství souborù stránek, které jsou umístìny ve va¹em adresáøiwikilib.d/, a nìkteré speciální skripty pro pøeklady,, které pou¾ívají jinou znakovou sadu ne¾ iso-8859-1 (výchozí kódování PmWiki). Kdy¾ jsou stránky s pøeklady nainstalované (tj. nakopírované), jazyk zapnete pøidání volání XLPage() do svého souboru config.php. Napøíklad, pro volbu francouzských hlá¹ení bychom uvedli XLPage('fr','PmWikiFr.XLPage');
co¾ udává, ¾e je tøeba naèítat pøeklady pro francouz¹tinu ('fr') ze stránky PmWikiFr.XLPage. Pro èeský pøeklad pou¾ijete: XLPage('cs','PmWikiCs.XLPage');
Je zcela v poøádku naèítat nìkolik stránek; tak¾e pokud chcete vytvoøit vlastní lokální pøeklady beze zmìn tìch získaných z i18n.tgz, vytvoøte pouze dal¹í stránku (viz ní¾e) a naèítejte ji nejprve. Ujistìte se, ¾e nejprve naèítáte stránku s va¹imi ístními zmìnami!!:
XLPage('fr','PmWikiFr.XLPageLocal'); # moje osobní pøeklady
XLPage('fr','PmWikiFr.XLPage'); # z i18n.tgz
Pokud máte v úmyslu provozovat svoje webové stránky ve více jazycích a pou¾ívat (Wiki skupiny?) jako selektory jazykù, budete chtít pravdìpodobnì umístit tento kód do souborù s lokálními úpravami (viz Nastavení pro skupiny?). Napøíklad, pokud je va¹e stránka dostupná francouzsky a anglicky a francouzské stránky jsou ve skupinì pojmenované Fr, vytvoøili byste soubor pojmenovaný Fr.php v adresáøi local/ který by obsahoval:
<?php if (!defined('PmWiki')) exit();
##zmena do francuzskeho jazyka
XLPage('fr','PmWikiFr.XLPage');
Mù¾ete chtít vytvoøit stránku nazvanou PmwikiFr.php se stejným obsahem pro pøístup k francouzské dokumentaci ve skupinì PmwikiFr. En.php v tomto pøípade není potøeba, nebo» angliètina je výchozí pøedvolený jazyk. Alternativa k vý¹e uvedenému by bylo pøidat do config.php následující kód, který testuje zda ve skupinì existuje XLPage, a pokud ji najde, naèítá ji:
$xlpage = FmtPageName('$Group.XLPage', $pagename);
if (PageExists($xlpage)) XLPage($xlpage, $xlpage);
S touto metodou doká¾ete pøiøadit pøíslu¹nou XLPage do jakékoli skupiny, která potøebuje jinou jazykovou podporu. Tvorba nových pøekladùPokud pro vámi po¾adovaný jazyk neexistují stránky jazyka, ke lehké je vytvoøit! Pøekldaový soubor XLPage obsahuje øádky ve tvaru 'výraz' => 'pøelo¾ený výraz',
kde "výraz" je internacionalizovaný výraz (oznaèený pomocí 'SearchWiki' => 'Rechercher',
pøevede na výstupu " Pokud vytvoøíte nové verze stránek PmWiki v jiných jazycích, prosím uva¾ujte o jejich pøidání na tak aby byli pøístupné ostatním v archívu i18n.tgz! Pojem "i18n" se bì¾nì pou¾ívá jako zkratka anglického slova "internationalization" (internacionalizace). Zkratka je odvozená od skuteènosti, ¾e mezi "i" a koncovým "n" je 18 písmen a jen málo lidí je chce v¹echny psát...
Nástroje pro lokalizaci PmWikiMù¾ete pomoci lokalizovat PmWiki do svého jazyka na pùvodní stránce: << Vlastní WikiStyly | Index dokumentace | Lokální nastavení >> OT: Kdy¾ mám wiki internacionalizovanou pomocí OD: Pou¾ijte OT: Co pøedstavuje první parameter této funkce? Jak mù¾e být pou¾itý? OD: Mechanizmus XLPage umo¾òuje naèítat více sad pøekladù a první parametr se pou¾ívá na jejich rozli¹ení. Napøíklad, pøedpokládajme, ¾e chceme mít pøeklady pro normální francouz¹tinu i pro "kanadskou" francouz¹tinu. Namísto udr¾ování dvou zcela samostatných sad stránek, bychom mohli udìlat: XLPage('fr', 'PmWikiFr.XLPage');
XLPage('fr-ca', 'PmWikiFrCa.XLPage');
PmWikiFr.XLPage by obsahovala v¹echny pøeklady ve standartní francouz¹tinì, zatímco co PmWikiFrCA.XLPage by mohla obsahovat jen pøeklady "specifické pro Kanadu" -- tj., ty, které jsou odli¹né od tìch na francouzské stránce. První parameter odli¹uje dvì sady pøekladù. Navíc, skript config.php mù¾e pou¾ít promìnnou a Pmwiki pou¾ije pouze 'fr' a 'en' pøeklady (v tomto poøadí), nezále¾í na tom kolik pøekladù bylo naèteno pomocí XLPage(). |