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 Parametershow
, was immer noch funktioniert.archive
- Hat dieser Parameter den Wertyes
, 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 Wertyes
, wird ein Formular zum Erstellen neuer Einträge in dem Blog angezeigt.postformtext
- Gibt an, welcher Text im 'postform' angezeigt wird.rootpage
- Aktiviertpostform
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
- Wennyes
, 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 Wertno
verhindert werden. Wenn das Wiki RSS erlaubt (allowrss
in der Konfigurationsdatei), dann kann der RSS-Feed mityes
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 Wertno
verhindert werden. Wenn das Wiki Atom erlaubt (allowatom
in der Konfigurationsdatei), dann kann der Atom-Feed mityes
aktiviert werden.feeds
- Steuert die Erzeugung aller Feed-Typen. Ein Wert vonno
unterdrückt alle Feeds.emptyfeeds
- Beino
werden keine leeren Feeds erzeugt. Dies hat keine Auswirkung, wennrootpage
oderpostform
aktiv sind.id
- Wird für das HTML-Attributid
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 Vorlageinlinepage
verwendet, während die Vorlagearchivepage
Für Archiv-Seiten verwendet wird. Mit diesem Parameter kann eine andere benutzerdefinierte Vorlage verwendet werden. Nützlich sind zum Beispieltitlepage
, um nur die Titel von Beiträgen anzuzeigen, odermicroblog
, was für Microblogging optimiert ist. Wenn die verwendete Vorlage nicht den Seiteninhalt ausgibt, sollte aucharchive=yes
gesetzt werden.raw
- Anstelle des üblichen Verhaltens, einen Blog zu erzeugen, wird beiraw=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 zusort="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 vonlimit
(siehe oben). In früheren Versionen von IkiWiki hieß dieser Parameterfeedshow
, 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 vonpages
(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 vorangestelltemurn:uuid:
), wird der Atom-Feed diese als seine<id>
haben. Voreingestellt ist die URL der Seite, die dieinline
-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, umpage/feed.atom
und/oderpage/feed.rss
zu erzeugen. Diese Option wird nur unterstützt, wennusedirs
verwendet wird..pagenames
- Wenn dies anstelle vonpages
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 Parametersort
undpages
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 Optionenskip
undlimit
werden für den Pfad ignoriert, die Weiter-/Zurück-Links durchlaufen also alle ausgewählten Seiten.