Die inline-Anweisung wird durch die 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" limit="10" rootpage="blog"]]

Es wird jede Seite Teil des Blogs, die auf die angegebene PageSpec passt (im Beispiel jede Unterseite 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 einfache Podcasts. Für Podcast-Feeds mit mehr Funktionen können Medien-Dateien über meta in die Blog-Einträge eingebettet werden.

Der optionale Parameter rootpage teilt dem Wiki mit, dass neue Einträge in diesem Blog Unterseiten 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.
  • limit - Gibt die maximale Anzahl einzubettender Seiten an. Voreingestellt ist 10, außer für Archive, wo alle passenden Seiten angezeigt werden. Auf 0 setzen um alle passenden Seiten anzuzeigen. In früheren Versionen von IkiWiki hieß dieser Parameter show, was immer noch funktioniert.
  • archive - Hat dieser Parameter den Wert yes, werden nur der Titel und einige Metadaten angezeigt, aber nicht der komplette Inhalt.
  • title - Setzt den Titel des RSS-Feeds, wenn einer erzeugt wird. Voreingestellt ist die Name der Seite.
  • 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 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.
  • id - Wird für das HTML-Attribut id der Feed-Verknüpfungen und Formulare verwendet. Nützlich, falls es mehrere Formulare auf einer Seite gibt.
  • template - Gibt die Vorlage an, mit der die eingebettete Seite angezeigt werden soll. Standardmäßig wird die Vorlage inlinepage verwendet, während die Vorlage archivepage Für Archiv-Seiten verwendet wird. Mit diesem Parameter kann eine andere benutzerdefinierte Vorlage verwendet werden. Nützlich sind zum Beispiel titlepage, um nur die Titel von Beiträgen anzuzeigen, oder microblog, was für Microblogging optimiert ist. Wenn die verwendete Vorlage nicht den Seiteninhalt ausgibt, sollte auch archive=yes gesetzt werden.
  • raw - Anstelle des üblichen Verhaltens, einen Blog zu erzeugen, wird bei raw=yes eine Seite ohne zusätzliches Markup um sie herum eingefügt -- so, als ob sie direkt im Quelltext der einbindenden Seite stehen würde.
  • sort - Steuert wie die eingebundenen Seiten sortiert werden. In der Voreinstellung werden die neuesten Seiten zuerst angezeigt, und falls mehrere Seiten in einem Commit erzeugt wurden, werden sie nach dem Namen der Seite sortiert (äquivalent zu sort="age title").
  • reverse - Wird dies auf "yes" gesetzt, wird die Sortierreihenfolge umgekehrt.
  • feedlimit - Hiermit kann die maximale Anzahl von Seiten angegeben werden, die in einem Feed eingebettet werden. Voreingestellt ist der Wert von limit (siehe oben). In früheren Versionen von IkiWiki hieß dieser Parameter feedshow, unter diesem Namen funktioniert er ebenfalls noch.
  • feedonly - Erzeuge nur den Feed, bette die Seiten nicht in die Seite selbst ein.
  • quick - Erzeuge Archive im schnellen Modus, ohne die Seiteninhalte nach Metadaten zu durchsuchen. Damit wird auch die Erzeugung von Feeds abgeschaltet.
  • timeformat - Hiermit kann das Format für Datum und Urzeit eingestellt werden, das in dem Blog verwendet wird. Die angegebene Zeichenkette wird der Funktion strftime(3) übergeben.
  • feedpages - Eine PageSpec von eingebetteten Seiten, die für den RSS-/Atom-Feed verwendet werden soll. Voreingestellt ist der Wert von pages (siehe oben). Nur Seiten die davon erfasst sind werden verwendet, aber hier kann eine engere PageSpec angegeben werden.
  • guid - Wenn hier eine URI angegeben wird (zum Beispiel eine UUID mit vorangestelltem urn:uuid:), wird der Atom-Feed diese als seine <id> haben. Voreingestellt ist die URL der Seite, die die inline-Anweisung enthält.
  • feedfile - Kann verwendet werden, um den Namen der für den Feed erzeugten Datei zu ändern. Das ist insbesondere dann hilfreich, wenn eine Seite mehrere Feeds enthält. Zum Beispiel kann "feedfile=feed" gesetzt werden, um page/feed.atom und/oder page/feed.rss zu erzeugen. Diese Option wird nur unterstützt, wenn usedirs verwendet wird..
  • pagenames - Wenn dies anstelle von pages angegeben wird, wird es als durch Leerzeichen getrennte Liste von absoluten Seitennamen interpretiert (LinkingRules werden nicht berücksichtigt), die in der angegebenen Reihenfolge eingebettet werden: Die Parameter sort und pages können nicht mit diesem kombiniert werden.
  • trail - Wird dies auf "yes" gesetzt und das trail-Plugin ist aktiviert, werden die eingebetteten Seiten zu einen Pfad (trail) mit Weiter-/Zurück-Links, indem dieselben Optionen an trailitems weitergegeben werden. Die Optionen skip und limit werden für den Pfad ignoriert, die Weiter-/Zurück-Links durchlaufen also alle ausgewählten Seiten.