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.