Direktiva aggregate
je poskytována modulem aggregate. Tento modul vyžaduje speciální nastavení, konkrétně
cronovou úlohu. Podrobnosti naleznete v dokumentaci k modulu.
Tato direktiva umožňuje ve wiki agregovat obsah z jiných zdrojů. Zdroj (kanál) přidáte následovně:
[[!aggregate name="testovací blog" dir="example"
feedurl="http://example.com/index.rss"
url="http://example.com/" updateinterval="15"]]
Příklad agreguje články ze zadaného RSS kanálu, aktualizuje se každých patnáct minut (nejspíše však méně často, protože cronová úloha může běžet v delších intervalech) a každý článek uloží do wiki do samostatné stránky v adresáři example/.
Agregovaný kanál (nebo kanály) pak můžete direktivou inline proměnit v blog. Například:
[[!inline pages="internal(example/*)"]]
Povšimněte si použití funkce internal()
při specifikování
stránek. Agregované stránky jsou totiž implicitně chápány
jako interní a proto se nezobrazí ve wiki přímo, ale je nutno použít
speciální ?PageSpec.
Použití
Zde je popis všech parametrů podporovaných direktivou aggregate
:
name
- Název kanálu. Každý kanál musí mít jedinečný název. Povinné.url
- URL webové stránky s kanálem, který se má agregovat. Povinné.dir
- Adresář ve wiki, kam se mají ukládat agregované stránky. Volitelné. Pokud není zadán, bude jmého adresáře odvozeno z názvu kanálu.feedurl
- URL kanálu. Volitelné, pokud není zadáno, bude ikiwiki hledat kanály naurl
. Podporovány jsou kanály typu RSS a atom.updateinterval
- Jak často se mají zjišťovat nové články (v minutách). Výchozí hodnota je 15 minut.expireage
- Odstraní staré články z tohoto kanálu pokud jsou starší než zadaný počet dnů. Ve výchozím nastavení se nikdy nemaže podle stáří.expirecount
- Odstraní staré články z tohoto kanálu pokud je jich více než zadaný počet. Nejprve budou mazány nejstarší články. Ve výchozím nastavení se nikdy nemaže podle počtu článků.tag
- Štítek, který se přilepí na všechny články z tohoto kanálu. Dobrý štítek bývá název kanálu. Parametrtag
je možné použít víckrát. Aby štítkování fungovalo, musí být povolen modul tag.template
- Šablona, která se má použít pro vytvoření agregovaných stránek. Výchozí hodnota je „aggregatepost“.
Pozor na to, že i když používáte subversion, nebo nějaký jiný systém pro správu verzí, nebudou stránky vytvořené při agregaci uloženy do repositáře.