Textové soubory

Textový soubor je XML soubor, který slouží k uložení veškerých textů na webu, které není potřeba (či není žádoucí) editovat v administraci. Obvykle se jedná o servisní texty jako jsou popisky tlačítek apod. Textové soubory se používají zejména u vícejazyčných webů, kde stačí jediná sada *.aspx šablon společná pro všechny jazyky.

Pro každý jazyk definovaný v elementu <Languages> je třeba mít vytvořený příslušný soubor. Jméno souboru musí odpovídat jménu jazyka, koncovka je .config. Například pro češtinu cs má soubor název cs.config, pro angličtinu en.config atd. Textové soubory se umísťují do složky /texts (viz Adresářová struktura webu).

Text z textového souboru se do stránky vypíše pomocí controlu <je:text>, přičemž se vždy vezme text z textového souboru, který odpovídá aktuálnímu jazyku stránky.

Obsah textového souboru může vypadat např. takto:

<?xml version="1.0" encoding="utf-8" ?>
<Texts lang="en" xmlns="urn:Bet:ns:JellyPotTxt">
    <UI>
        <ok>OK</ok>
        <cancel>Cancel</cancel>
    </UI>
    <SomeText>Lorem ipsum dolor foo bar</SomeText>
</Texts>

Struktura, elementy a jejich obsah může může být v textovém souboru libovolný, avšak respektující syntaci XML souboru. Povinný je pouze kořenový element Texts s uvedením atributu lang, jehož hodnota se shoduje se jménem příslušného jazyka.

Elementy definované v textovém souboru výchozího jazyka by měly být obsaženy i v textových souborech ostatních jazyků. Tento stav lze zkontolovat pomocí nástroje přístupného z administrace (sekce Administrace, položka Admin tools).

Výpis textu pomocí controlu <je:text>

Text z textového souboru se vypisuje do stránky pomocí controlu <je:text> například takto:

<je:text runat="server" textNode="UI/SomeText" />

V atributu textNode se uvede cesta k požadovanému elementu, kořenový element Texts se neuvádí. Názvy elementů jsou case-senzitive.

Rozsáhlejší text

Element v textovém souboru může obsahovat i html značky. Je nutno ale dát pozor, aby výsledný soubor byl XML validní, tj. např. zapsat uzavírací lomítko u nepárových tagů. Elementy obsahující html značky je vhodné označit atributem htmlContent="true". Existence vnitřních elementů pak není nástrojem pro kontrolu textových souborů sledována.

<?xml version="1.0" encoding="utf-8" ?>
<Texts lang="en" xmlns="urn:Bet:ns:JellyPotTxt">
	<SomeHtmlText htmlContent="true">
		Lorem ipsum dolor <em>foo bar</em>.
	</SomeHtmlText>
</Texts>

Připomínky a postřehy

Máte-li nějakou připomínku, dobrý nápad nebo jste našli v dokumentaci chybu, rádi od vás uslyšíme.