Nacházíte se zde: úvod > web design > KeReS > principy > základy


Základní principy

Ve své podstatě je celý web vnitřně rozdělen do třech sekcí. Grafická, logická a datová. A právě logicko-datovou sekci obhospodařuje redakční systém KeReS. Podle druhu vybraného jazyka a aktuální polohy uživatele v hierarchii webu vybere z XML souborů pomocí příkazy jazyka XPath všechna žádaná data a zobrazí na výstup. Logická struktura Vám bude naprogramována přímo s projektem, datovou strukturou si sami řídíte obsah, návaznosti apod.

Většina web designérů Vám prodá stránky, které mohou vypadat ve zdrojových souborech třeba takto:

     <li>
     <?
       switch($lang) {
         case "cz": 
           print(($page == "stranka")?"Položka":
                 "<a href=\"?lang=$lang&cat=$cat&page=stranka\"
                 class=\"menu\">Položka</a>"); break;
         case "en": 
           print(($page == "stranka")?"Item":
                 "<a href=\"?lang=$lang&cat=$cat&page=stranka\"
                 class=\"menu\">Item</a>"); break;
         .
         .
              
      }
    ?>
    </li> 
    

Jak v tomto kódu něco změnit, třeba texty? Pro laika je to dost obtížné. KeReS nabízí tuto variatu:

      <?xml version="1.0" encoding="utf-8"?>
      <!DOCTYPE ...>
        <expressions>
          <lang type="cz">
            <expression id="menu-polozka">Položka</expression>
            .
            .
            .
          </lang>
          <lang type="en">
            <expression id="menu-polozka">Item</expression>
            .
            .
            .
          </lang>
        </expressions> 
    

Podstatně jednodušší, co říkáte? Celý KeReS je vlastně jen o tom vystrkat všechny textové elementy ven z logické struktury, přičemž se velice šetrně přihlíží k možnostem vzniku dalších jazykových mutací.

nahoru

Navigace, stejně jako ostatní komponenty, je tvořena dvěma konfiguračníma entitama. První je XML datový soubor konfigurující strukturu kategorií, subkategorií a článků, druhý spravuje standardní i specifické fragmenty šablon.

Následující ukázky pomohou k pochopení. První je konfigurace struktury navigace, druhá vzhledu.

     <menu id="menu1" notation="standard">
      <config popupall="true" /> <!-- konfigurační uzel -->
      
      <lang type="cs"> <!-- česká verze -->
        <category id="cat1" link="princip" title="Základní principy funkčnosti" shortcut="principy">
          <introtext>jak celý systém funguje aneb laický pohled dovnitř.</introtext>
          <article id="1" link="zakladni-principy" />
          <subcategory id="scat1" link="diskuse" title="Diskuse nad tématem" shortcut="diskuse">
            <article id="d2" link="diskuse-2" />
            <article id="d1" link="diskuse-1" />
          </subcategory>
        </category>
        <category id="cat2" link="vyvoj-a-moduly" title="Vývoj a moduly" shortcut="vývoj a moduly">
          <introtext>nové verze, rozšiřující moduly a vylepšení.</introtext>
          <article id="1" link="mod-drobecku-a-anotaci" />
        </category>
      </lang>
      
      <lang type="en"> <!-- anglická verze -->
        <category id="cat1" link="principle" title="Basic principles of functionality" 
                                                                          shortcut="principles">
          <introtext>...</introtext>
          <article id="1" link="basic-principles" />
        .
        .
        .
        </category>
      </lang>
    </menu> 
    

Šablona na úpravu vzhledu anotací:

      <div id="anotace">
      <div id="intro">
        <h3>{$mainHeader}</h3>
        {$intro}
      </div>
      {$inside}
    </div> 
    

Tvorba a zpracování článků

nahoru

V současnosti KeReS funguje na principu co článek, to jeden XML soubor. Důvodem je snaha o srozumitelné oddělení jednotlivých článků a témat a o jejich snadné publikování a rušení. Články jsou vystavěny na uzavřené množině XML značek, které není nijak obtížné pochopit a aplikovat. Cokoli, co je napsáno špatně, je buď vynecháno nebo dle závažnosti označeno za chybné a nepublikováno.

Provozovatel KeReSu se nemusí starat o žádné typografické záležitosti. Vše je řešeno automaticky při zpracování příslušného XML souboru na výstup. Jsou dodrženy všechny zautomatizovatelné typografické normy včetně náhrazení některých znakových entit příslušnými kódy. Uvozovky jsou samozřejmě zobrazeny v souladu se zvolenou jazykovou mutací.

KeReS také nabízí možnost aplikace speciálních stylů a obalových elementů, které si provozovatel sám snadno nastaví a aplikuje. Nemusí přitom zavadit ani o jednu PHP funkci nebo výraz.

Notifikace značek XML datových souborů může být buď standardní (na 90% shodná s HTML) nebo uživatelská (náhrada srozumitelnými ekvivalenty, např.: p = odstavec). Do budoucna je v plánu vytvořit user-friendly editor, velice podobný Microsoft Wordu, čímž by odpadla jakákoli starost provozovatele o značky, Texy! apod.

Následuje ukázka XML datového souboru, kterým je generován tento článek:

     <article id="tlchwdg-1" notation="standard">
      <date day="18" month="6" year="2007" />
      <lang type="cs" shortcut="základy">  
      <h1>
        <text>Základní principy</text>
      </h1>
      <ul wrapper="k-block">
        <li>
          <text>Publikace článků</text>
        </li>
        <li>
          <text>Tvorba</text>
          <url location="this" site="navigace" title="Navigace">navigace a struktury</url>
        </li>
        <li>
          <text>Tvorba</text>
          <url location="this" site="clanky" title="Články">článků</url>
        </li>
      </ul>
      <p indent="no">
        <text>Ve své podstatě je celý web vnitřně rozdělen do třech sekcí..</text>
      </p>
      <p indent="no">
        <text>Většina web designérů Vám prodá stránky...</text>
      </p>
      <pre style="blue">
      .
      .
      </pre>
      <dispdate>Sepsáno:</dispdate>
    </lang>
    
    <lang type="en" shortcut="basic">
    .
    .
    </lang>
   </article> 
    

Závěrem

nahoru

Většina RS je pro malé projekty, ve kterých se stránky mění jednou za měsíc, příliš robustní. Pokud potřebujete něco menšího, kompaktního a snadno upravitelného, zkuste KeReS.

Sepsáno: 18.6.2007