Skoči na vsebino

Besedilo in prevodi

MRBS ločuje besedišče aplikacije, besedila posameznega spletnega mesta, strani s pomočjo in ta priročnik MkDocs. Izberite pravo raven sprememb, da bodo nadgradnje ostale obvladljive.

Naloga Pravilna lokacija
Preimenujte oznako za eno namestitev $vocab_override in config.inc.php
Dodajte ali izboljšajte MRBS jezik uporabniškega vmesnika web/lang/lang.<language>
Prevedite ali prilagodite stran pomoči v aplikaciji web/site_faq/site_faq_<language>.html
Prevedite ta priročnik Datoteka z jezikovno pripono spodaj docs/

Preglasi besedilo za eno spletno mesto

Poslane jezikovne datoteke ne urejajte zgolj zato, da preimenujete »Sobo« ali spremenite naslov mesta. Poiščite žeton v web/lang/lang.en in ga preglasite:

$vocab_override['en']['mrbs'] = 'Resource Booking';
$vocab_override['de']['mrbs'] = 'Ressourcenbuchung';
$vocab_override['fr']['mrbs'] = 'Réservation de ressources';
$vocab_override['es']['mrbs'] = 'Reserva de recursos';

Vrstni red indeksa je vedno jezik, nato žeton: $vocab_override[LANG][TOKEN].

Uporabni žetoni, določeni na spletnem mestu, vključujejo:

$vocab_override['en']['room.coffee_machine'] = 'Coffee machine';
$vocab_override['en']['entry.catering'] = 'Catering';
$vocab_override['en']['entry.description.placeholder'] =
    'Add information for the room team';
$vocab_override['en']['users.zip_code.oninvalid'] =
    'Enter a valid ZIP code';
$vocab_override['en']['type.C'] = 'Customer booking';

Žetoni polja po meri so opisani v Polja po meri. Opisi vrste rezervacije uporabljajo type.X, kjer je X koda konfiguriranega tipa.

Preglasitve preživijo nadgradnjo, ker živijo v konfiguraciji mesta. Ponovno preverite njihov pomen, če izdaja spremeni izvirni žeton ali njegov kontekst.

Ohranite nadomestne oznake

Jezikovni nizi lahko vsebujejo oznake printf, kot je %s, %d, ali pozicijske oblike, kot je %1$d. Ohranite vsak marker in njegovo vrsto. Prevod lahko preureja argumente samo s pozicijsko obliko.

Ohranite tudi namerno umetne fragmente HTML, semantiko ločil in okoliške presledke. Preizkusite nize s štetjem nič, ena in mnogo, kjer je primerno.

Izberite jezik izvajalnega okolja

MRBS privzeto izbere jezik v brskalniku:

$disable_automatic_language_changing = false;

Če želite vsiliti en jezik:

$disable_automatic_language_changing = true;
$default_language_tokens = 'de';

Žeton se mora ujemati z razpoložljivo datoteko web/lang/lang.*. Lokalno izbiro za datume in ure je mogoče ločeno preglasiti:

$override_locale = 'de-DE';
$cli_language = 'de';

$override_locale mora podpirati tudi operacijski sistem strežnika. $cli_language nadzoruje ukaze, ki se izvajajo zunaj brskalnika. Za diagnozo $language_debug = true zapiše informacije o jeziku in področnih nastavitvah v dnevnik napak; po odpravi težave znova onemogočite.

Dodajte ali vzdržujte jezik aplikacije

Angleška datoteka je referenca in nadomestna datoteka. Če želite ustvariti jezik, katerega zaznani žeton je xx:

cp web/lang/lang.en web/lang/lang.xx

Nato:

  1. Ohranite začetno vrstico PHP in vsak ključ $vocab.
  2. Prevedite vrednosti nizov, ne imen žetonov.
  3. Shranite datoteko kot UTF-8.
  4. Ne uporabljajte entitet HTML razen &nbsp;; neposredno zapisati znake UTF-8.
  5. Ohranite nadomestne oznake in namerno oznako.
  6. Preverite sintakso PHP.
php -l web/lang/lang.xx

MRBS najprej naloži angleško referenco in nato izbrani jezik, tako da se manjkajoči žetoni vrnejo v angleščino.

Preverite popolnost

checklang.php primerja jezikovne datoteke z lang.en. Za razvojni primerek ga postavite ali obdržite v spletnem imeniku MRBS in odprite:

https://example.invalid/mrbs/checklang.php?lang[]=xx

Brez izbire jezika ponuja vse nameščene jezikovne datoteke. Izbirna funkcija posodabljanja piše datoteke in zato zahteva dostop za pisanje; izogibajte se temu pri proizvodnji in pregledujte ustvarjene spremembe. Ko je preverjanje končano, omejite ali odstranite ta razvojni pripomoček iz javne uporabe.

Preverjanje sintakse in checklang.php ulovita različne težave: uporabite oboje.

Prevedite stran pomoči v aplikaciji

Besedilo pomoči ne izvira iz $vocab. Shranjuje se ločeno:

web/site_faq/site_faq.html
web/site_faq/site_faq_de.html
web/site_faq/site_faq_fr.html
web/site_faq/site_faq_es.html

Izberite pripono brez podčrtaja:

$faqfilelang = 'de';

Starejše vrednosti, kot je '_de', so sprejete zaradi združljivosti, vendar so zastarele. Nastavitev je neodvisna od jezika brskalnika, zato preverite, ali se izbrana pogosta vprašanja ujemajo s predvidenim občinstvom. Lokalne popravke poslanih datotek s pogostimi vprašanji je treba zabeležiti in ponovno uporabiti ali združiti med nadgradnjo.

Prevedite ta priročnik

Spletno mesto z dokumentacijo uporablja datoteke pripon:

docs/admin-guide/custom-fields.md
docs/admin-guide/custom-fields.de.md
docs/admin-guide/custom-fields.fr.md
docs/admin-guide/custom-fields.es.md

Angleščina je nadomestna dokumentacija. Te datoteke ne vplivajo na uporabniški vmesnik aplikacije MRBS ali njeno stran s pomočjo.

Potek dela, varen za nadgradnjo

  1. Vnesite besedilo samo za spletno mesto v $vocab_override.
  2. Hranite seznam lokalno vzdrževanih jezikov in datotek s pogostimi vprašanji.
  3. Primerjajte novo lang.en s prejšnjo različico za dodane ali spremenjene žetone.
  4. Zaženite php -l pri vsaki spremenjeni jezikovni datoteki.
  5. Zaženite checklang.php na instanci z omejenim razvojem.
  6. Oglejte si spremembe pogostih vprašanj ločeno.
  7. Pred uvedbo preizkusite vse aktivne jezike.

Kontrolni seznam za preverjanje

  • Zaznavanje brskalnika in prisilna privzeta izbira pričakovanega jezika.
  • Manjkajoči žetoni se vrnejo v razumljivo angleščino.
  • Strani za krmarjenje, obrazce, napake, odobritve in skrbništvo so upodobljene pravilno.
  • %s, %d in pozicijski markerji prejmejo prave vrednosti.
  • Datumi, ure, dnevi v tednu in časovni pasovi uporabljajo predvidene področne nastavitve.
  • Zadeve in telesa e-pošte, poročila, izvozi in opravila ukazne vrstice uporabljajo predvideni jezik.
  • Polja po meri, vrste rezervacij, ogradne oznake in potrditvena sporočila so prevedeni.
  • Stran s pomočjo uporablja pričakovano datoteko site_faq.
  • Dnevniki ne vsebujejo vztrajnega odpravljanja napak v jeziku ali občutljivih vrednosti obrazca.