WebGen

12. srpna 2012

Můj vlastní generátor statických webových stránek, napsaný v PHP a spouštěný z příkazové řádky.

Jeho předností v nejnovější verzi je nejen podpora značkovacího jazyka Texy!, ale i možnost využít výhody úžasného šablonovacího systému Latte.


Příklad použití

repozitáře si stáhneme nejnovější verzi zdrojového kódu a rozbalíme do adresáře dle libosti. Součástí zdrojového kódu je i adresář s příkladem. Přejdeme proto do složky example. Zde vidíme tři položky:

  • složku input – ta obsahuje zdrojové soubory (soubory Texy! a Latte)
  • soubor @layout.latte – obsahuje Latte šablonu layoutu
  • a nakonec nepovinný soubor config.neon, který obsahuje konfiguraci pro generátor

Teď si složku example otevřeme v terminálu/pří­kazové řádce, např. nějak takto:

cd example

A spustíme náš generátor:

php -f /cesta/k/souboru/webgen.phpc

A nic se nestane :) Jenom dojde k vypsání některých informací (verze generátoru, přípustné parametry). Je to taková bezpečnostní pojistka, aby nechtěně nedošlo ke spuštění generátoru. Pokud si jsme opravdu jisti, že chceme generování spustit (a my jsme :), přidáme k příkazu ještě parametr --run:

php -f cesta/k/webgen.phpc -- --run

Poznámka: ke spuštění generátoru můžeme využít předpřipravený BASH skript (naleznete ho ve složce bin). Stačí si skript otevřít v textovém editoru, upravit cestu k souboru webgen.phpc na posledním řádku, uložit skript a nakonec ho nakopírovat do některé složky, která je uvedena v systémové proměnné PATH. Na Ubuntu lze např. použít předpřipravenou složku ~/bin. Poté budeme schopni spouštět generátor pouhým příkazem webgen --run.

Spustili jsme tedy generátor a pokud nám štěstí přálo, nevypsal žádnou chybu :)

Ve složce example se nám nyní objevil nový soubor lastBuild.dat a adresář output obsahující jednotlivé vygenerované verze našich stránek. WebGen negeneruje vždy všechny soubory znovu, ale řídí se právě údajem v souboru lastBuild.dat, takže při dalším spuštění vygeneruje jenom opravdu změněné soubory. Pokud chceme přegenerovat všechny soubory, aniž by se generátor řídil souborem lastBuild.dat, můžeme použít parametr --force, nebo tento soubor smazat.

Nyní už jenom stačí nahrát danou verzi na web, např. pomocí FTP. A je to :)

Líbí se vám tato stránka?