Inhaltsverzeichnis
WvdS.DokuWiki.i18n Dodatak
Dodatak: wvdsi18n
Verzija: 1.0.0
Imenski prostor: lib/plugins/wvdsi18n/
Autor: Wolfgang van der Stille zeljko.petrusic@outlook.de
Licenca: GPL 2
Migracija iz wvdslang: Ovaj dodatak zamjenjuje stari dodatak
wvdslang.
Funkcionalnost preusmjeravanja premještena je u dodatak wvdscond (razdvajanje odgovornosti).
Definicija
Dodatak wvdsi18n pruža funkcije internacionalizacije za višejezični sadržaj:
- Ključevi prijevoda - Iz CSV datoteke
- Ugrađeni prijevodi -
de:Tekst|en:Text - Config vrijednosti - S višejezičnim parsiranjem
- Template vrijednosti - S višejezičnim parsiranjem
Primjeri uporabe
- Višejezična navigacija - Tekstovi izbornika na različitim jezicima
- Prevodivi UI elementi - Gumbi, oznake, obavijesti
- Integracije s predlošcima - Bočna traka, podnožje, zaglavlje
- Centralizirani prijevodi - Svi tekstovi u jednoj CSV datoteci
Sintaksa
Ključ prijevoda
Početna Kontakt
Učitava vrijednost iz i18n.csv na temelju trenutnog jezika.
Eksplicitni jezik
Startseite Home
Prisiljava određeni jezik, neovisno o pregledniku.
Ugrađeni prijevod
de:Ja|en:Yes|hr:Da de:Speichern|en:Save|hr:Spremi
Izravni prijevod bez CSV datoteke.
Config vrijednost
conf:title conf:tagline
Čita DokuWiki konfiguraciju s višejezičnim parsiranjem.
Template Config
tpl:footerText tpl:topSidebarTitle
Čita konfiguraciju predloška s višejezičnim parsiranjem.
CSV Format
Prijevodi su pohranjeni u lib/plugins/wvdsi18n/i18n.csv:
key,de,en,sl,it,hr menu_home,Startseite,Home,Domov,Home,Početna menu_contact,Kontakt,Contact,Kontakt,Contatto,Kontakt button_save,Speichern,Save,Shrani,Salva,Spremi
| Stupac | Opis |
|---|---|
key | Jedinstveni ključ |
de | Njemački prijevod |
en | Engleski prijevod |
| … | Dodatni jezici |
Detekcija jezika
Jezik se određuje sljedećim redoslijedom:
- Put imenskog prostora -
de:start→ de - Zaglavlje preglednika -
Accept-Language: de-DE→ de - DokuWiki jezik -
$conf['lang'] - Zadani dodatka -
defaultLangkonfiguracija
Konfiguracija
| Opcija | Zadano | Opis |
|---|---|---|
enabled | 1 | Omogući dodatak |
languages | de,en,sl,it,hr | Dostupni jezici |
defaultLang | en | Zadani jezik (rezerva) |
langPosition | 0 | Pozicija jezika u imenskom prostoru (0 = prva razina) |
Primjeri
Primjer 1: Navigacija
===== menu_navigation ===== * [[.:start|Početna]] * [[.:docs:index|Projektna dokumentacija]] * [[.:contact|Kontakt]]
Rezultat (preglednik: hr):
- Početna
- Dokumentacija
- Kontakt
Primjer 2: Ugrađeno u gumbima
<button>de:Absenden|en:Submit|hr:Pošalji</button>
Primjer 3: Podnožje s Template-Config
<footer> tpl:footerText </footer>
Primjer 4: Eksplicitni jezik za poveznice
Jezici: [[.:de:start|Startseite]] |
[[.:en:start|Home]] |
[[.:hr:start|Početna]]
Rezultat:
- Jezici: Startseite | Home | Početna
Integracija u predloške
PHP uporaba
<?php // Učitaj helper $helper = plugin_load('helper', 'wvdsi18n'); if ($helper) { // Dohvati prijevod echo hsc($helper->get('menu_home')); // Eksplicitni jezik echo hsc($helper->get('menu_home', 'en')); // Parsiraj ugrađeno echo hsc($helper->parseMultilang('de:Ja|en:Yes')); // Template-Config echo hsc($helper->getTplConfig('footerText')); } ?>
Migracija iz wvdslang
Pronađi i zamijeni
Staro: {{wvds:lang>
Novo: {{wvds:i18n>
Staro: {{wvds:lang:
Novo: {{wvds:i18n:
Napomene o verziji
| Verzija | Datum | Promjene |
|---|---|---|
| 1.0.0 | 2026-01-29 | Prva izdanja (nasljednik wvdslang) |
Vidi također
- WvdS.DokuWiki.Cond Dodatak - Uvjetni sadržaj i preusmjeravanja
- WvdS.DokuWiki.Snippet Dodatak - Višekratno upotrebljivi HTML blokovi
- WvdS.DokuWiki.Flat Predložak - Predložak s preklopnikom jezika
Tehnička referenca
Klasa: syntax_plugin_wvdsi18n
Datoteka: lib/plugins/wvdsi18n/syntax.php
| Metoda | Opis |
|---|---|
getType() | Vraća substition |
getSort() | Vraća 100 |
connectTo($mode) | Registrira i18n uzorke |
handle($match, …) | Parsira sintaksu i izvlači sadržaj |
render($mode, …) | Vraća prevedeni tekst |
Klasa: helper_plugin_wvdsi18n
Datoteka: lib/plugins/wvdsi18n/helper.php
| Metoda | Opis |
|---|---|
get($key, $lang) | Dohvaća prijevod za ključ |
parseMultilang($value, $lang) | Parsira de:X|en:Y format |
getConfig($key, $lang) | Dohvaća DokuWiki-Config s parsiranjem |
getTplConfig($key, $lang) | Dohvaća Template-Config s parsiranjem |
detectLanguage() | Detektira trenutni jezik |
getLanguages() | Vraća konfigurirane jezike |
wvdsi18n DodatakAudit bestanden • 2026-03-30▾
Zuletzt geändert: 29.01.2026. u 19:56
Diskussion