From 46d295eff558e247b05e61038bd82d5c5b8155a7 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Thu, 14 Oct 2010 13:38:27 +0200 Subject: Sync with ikiwiki 3.20100926. --- ikiwiki/directive/inline.mdwn | 135 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 ikiwiki/directive/inline.mdwn (limited to 'ikiwiki/directive/inline.mdwn') diff --git a/ikiwiki/directive/inline.mdwn b/ikiwiki/directive/inline.mdwn new file mode 100644 index 0000000..9487937 --- /dev/null +++ b/ikiwiki/directive/inline.mdwn @@ -0,0 +1,135 @@ +Die `inline`-Anweisung wird durch die [[!iki plugins/inline +desc=inline]]-Erweiterung bereitgestellt. + +Diese Anweisung erlaubt das Einbinden einer Wiki-Seite in eine andere. Die +häufigste Verwendung ist das Erzeugen von Blogs und RSS- oder Atom-Feeds. + +Beispiel: + + \[[!inline pages="blog/* and !*/Discussion" show="10" rootpage="blog"]] + +Es wird jede Seite Teil des Blogs, die auf die angegebene [[PageSpec]] passt +(im Beispiel jede [[Unterseite|subpage]] von "blog"), und die zehn neusten +davon erscheinen auf der Seite. Übrigens werden Dateien, die keine Seiten +sind und auf die [[PageSpec]] passen, als RSS-Einbettungen Teil des Feeds: +Dies ist nützlich für Podcasts. + +Der optionale Parameter `rootpage` teilt dem Wiki mit, dass neue Einträge in +diesem Blog [[Unterseiten|subpage]] von "blog" sein sollen; in diesem Fall +wird ein Formular zum Hinzufügen neuer Beiträge am Anfang der Seite +angezeigt. + +Wenn es zu einem Blog eine Archivseite mit allen bisherigen Einträgen geben +soll, kann dies wie folgt erreicht werden: + + \[[!inline pages="blog/* and !*/Discussion" archive="yes"]] + +Mit dem folgenden Code kann man sogar eine automatisch erzeugte Liste mit +allen Seiten des Wikis erstellen (die neuesten erscheinen oben): + + \[[!inline pages="* and !*/Discussion" archive="yes"]] + +Es ist auch möglich, dass Seiten durch das Hinzufügen eines Tags Teil des +Blogs werden. Hierzu kann auf der betreffenden Seite einfach ein Link auf +die Seite (oder die Seiten) erstellt, die die Tags repräsentieren. Dann kann +die spezielle `link()`-[[PageSpec]] verwendet werden, um alle Seiten mit +einem gegebenen Tag zu erfassen: + + \[[!inline pages="link(life)"]] + +Es ist auch möglich, bestimmte Tags inzuschließen, während andere +ausgeschlossen werden: + + \[[!inline pages="link(debian) and !link(social)"]] + +## Verwendung + +Es gibt viele Parameter, die man mit der `inline`-Anweisung verwenden +kann. Dies sind die am häufigsten benutzten: + +* `pages` - Eine [[PageSpec]] der einzubindenden Seiten. +* `show` - Gibt die maximale Anzahl von Seiten an, die eingebunden werden + sollen. Voreingestellt sind 10, außer wenn archiviert wird, dass sind es + alle. Ist der Wert 0, werden alle passenden Seiten angezeigt. +* `archive` - Hat dieser Parameter den Wert `yes`, werden nur der Titel und + einige Metadaten angezeigt, aber nicht der komplette Inhalt. +* `description` - Setzt die Beschreibung des RSS-Feeds, wenn einer erzeugt + wird. Voreingestellt ist der Name des Wikis. +* `skip` - Gibt die Anzahl von Seiten an, die bei der Anzeige übersprungen + werden. Dies kann nützlich sein, um einen Feed zu erstellen, der nur + archivierte Seiten enthält. +* `postform` - Bei dem Wert `yes`, wird ein Formular zum Erstellen neuer + Einträge in dem Blog angezeigt. +* `postformtext` - Gibt an, welcher Text im 'postform' angezeigt wird. +* `rootpage` - Aktiviert `postform` und erlaubt gleichzeitig die Kontrolle + darüber, wo neu erstellte Seiten landen sollen, indem eine Seite angegeben + wird, deren [[Unterseite|subpage]] die neuen Seiten werden sollen. + +Hier sind einige weniger häufig benötigte Parameter: + +* `actions` - Wenn `yes`, füge Links zum Bearbeiten und zur Diskussion am + unteren Ende jeder eingebundenen Seite ein (wenn sie im Kopf der + jeweiligen Seite angezeigt werden würden). +* `rss` - Steuert die Erzeugung eines RSS-Feeds. Wenn das Wiki so + konfiguriert ist, dass es standardmäßig RSS-Feeds erzeugt, kann dies durch + den Wert `no` verhindert werden. Wenn das Wiki RSS erlaubt (`allowrss` in + der Konfigurationsdatei), dann kann der RSS-Feed mit `yes` aktiviert + werden. +* `atom` - Steuert die Erzeugung eines Atom-Feeds. Wenn das Wiki so + konfiguriert ist, dass es standardmäßig Atom-Feeds erzeugt, kann dies + durch den Wert `no` verhindert werden. Wenn das Wiki Atom erlaubt + (`allowatom` in der Konfigurationsdatei), dann kann der Atom-Feed mit + `yes` aktiviert werden. +* `feeds` - Steuert die Erzeugung aller Feed-Typen. Ein Wert von `no` + unterdrückt alle Feeds. +* `emptyfeeds` - Bei `no` werden keine leeren Feeds erzeugt. Dies hat keine + Auswirkung, wenn `rootpage` oder `postform` aktiv sind. +* `template` - Gibt die Vorlage an, die für die Anzeige der einzelnen + eingebundenen Seiten verwendet wird. Voreingestellt ist die + `inlinepage`-Vorlage, für Archive wird `archivepage` verwendet. Es können + auch andere, angepasste Vorlagen verwendet werden, etwa `titlepage` (zeigt + nur die Titel der Blog-Einträge) oder `microblog` (optimiert für + Microblogging). Wenn die angepasste Vorlage den Seiteninhalt nicht + einbindet, kann zusätzlich `archive=yes` gesetzt werden. +* `raw` - Statt des voreingestellten Verhaltens, einen Blog zu erzeugen, + wird bei `raw=yes` die Seite ohne zusätzliches Drumherum eingebunden, als + ob sie ein Teil des Quelltextes der einbindenden Seite wäre. +* `sort` - Steuert wie die eingebundenen Seiten + [[sortiert|pagespec/sorting]] werden. In der Voreinstellung kommen die + zuletzt angelegten Seiten zuerst. +* `reverse` - Bei `yes` wird die Sortierung umgekehrt. +* `feedshow` - Gibt an, wie viele Seiten höchstens in den RSS- und + Atom-Feeds eingebunden werden. Voreingestellt ist der Wert von `show`. +* `feedonly` - Erzeuge nur den Feed, zeige die Seiten nicht eingebettet auf + der Seite an. +* `quick` - Erzeuge Archive im Schnelldurchlauf, ohne im Seiteninhalt nach + Metadaten zu suchen. Dies deaktiviert auch das Erzeugen von Feeds. +* `timeformat` - Hiermit kann gesteuert werden, wie die Zeit oder das Datum + der Blogeinträge dargestellt wird. Der Wert wird an die Funktion + strftime(3) weitergereicht. +* `feedpages` - Eine [[PageSpec]] mit Seiten, die im RSS- bzw. Atom-Feed + auftachen sollen. Voreingestellt ist der Wert von `pages`, und nur Seiten + die darauf passen werden eingebunden, aber einige davon können + ausgeschlossen werden, indem hier eine striktere [[PageSpec]] angegeben + wird. +* `guid` - Wenn hier eine URI angegeben wird (möglicherweise eine UUID mit + Präfix `urn:uuid:`), dann hat der Atom-Feed diese als seine + ``. Voreingestellt ist der Name der Seite, die die inline-Anweisung + enthält. +* `feedfile` - Hiermit kann der Name der Datei verändert werden, die für den + Feed erzeugt wird. Dies ist insbesondere dann nützlich, wenn eine Seite + mehrere Feeds enthält. Zum Beispiel kann man `feedfile=feed` setzen, um + `page/feed.atom` und/oder `page/feed.rss` zu erzeugen. Diese Option ist + nicht verfügbar, wenn das Wiki die Option `usedirs` nicht verwendet. +* `pagenames` - Kann anstelle von `pages` angegeben werden und wird als + Leerzeichen-separierte Liste von Links zu Seiten interpretiert (mit den + gleichen [[Verlinkungsregeln|SubPage/LinkingRules]] wie in einem + [[ikiwiki/WikiLink]]), und werden dann genau in der angegebenen + Reihenfolge eingebunden. Die Parameter `sort` und `pages` können nicht in + Kombination mit diesem verwendet werden. + +[[!meta robots="noindex, follow"]] + +Eine verwandte Anweisung ist die +[[ikiwiki/directive/edittemplate]]-Anweisung, mit der für eine neue Seite +ein voreingestellter Text angegeben werden kann. -- cgit v1.2.3