summaryrefslogtreecommitdiff
path: root/ikiwiki/directive/inline.mdwn
blob: 948793714e14e06457b51d9cd7c002ba9412da97 (plain)

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 <id>. 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.