]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/blog.mdwn
move inline parameter docs to blog page so they're available in the
[git.ikiwiki.info.git] / doc / blog.mdwn
index d300736a86b9a6feb5c673aae30a4c15d129f45d..be4ed41e249e4088a05224314b241701595029e3 100644 (file)
@@ -1,8 +1,93 @@
-You can turn any page on this wiki into a weblog by inserting a
-[[PostProcessorDirective]]. Like this:
+[[if test="enabled(inline)"
+     then="This wiki has the inline plugin **enabled**."
+     else="This wiki has the inline plugin **disabled**."]]
 
-\\[[inline pages="blog/*" show="10"]]
+[[if test="enabled(inline)"
+     then="You can"
+     else="If this wiki had the inline plugin enabled, you could"]]
+turn any page on this wiki into a weblog by using the `inline`
+[[PreProcessorDirective]]. For example:
 
-Any pages that match the specified [[GlobList]] (in the exaple, any
-[[SubPages]] of "blog") will be part of the blog, and the newest 10
-of them will appear in the page.
+       \[[inline pages="blog/* and !*/Discussion" show="10" rootpage="blog"]]
+
+Any pages that match the specified [[PageSpec]] (in the example, any
+[[SubPage]] of "blog") will be part of the blog, and the newest 10
+of them will appear in the page. Note that if files that are not pages
+match the [[PageSpec]], they will be included in the feed using RSS
+enclosures, which is useful for podcasting.
+
+The optional `rootpage` parameter tells the wiki that new posts to this blog
+should default to being [[SubPage]]s of "blog", and enables a form at the
+top of the blog that can be used to add new items.
+
+If you want your blog to have an archive page listing every post ever made
+to it, you can accomplish that like this:
+
+       \[[inline pages="blog/* and !*/Discussion" archive="yes"]]
+
+You can even create an automatically generated list of all the pages on the
+wiki, with the most recently added at the top, like this:
+
+       \[[inline pages="* and !*/Discussion" archive="yes"]]
+
+If you want to be able to add pages to a given blog feed by tagging them,
+you can do that too. To tag a page, just make it link to a page or pages 
+that represent its tags. Then use the special `link()` [[PageSpec]] to match
+all pages that have a given tag:
+
+       \[[inline pages="link(life)"]]
+
+Or include some tags and exclude others:
+
+       \[[inline pages="link(debian) and !link(social)"]]
+
+## usage
+
+Here are descriptions of all the supported parameters to the `inline`
+directive:
+
+* `pages` - A [[PageSpec]] of the pages to inline.
+* `show` - Specify the maximum number of matching pages to inline.
+  Default is 10, unless archiving, when the default is to show all.
+  Set to 0 to show all matching pages.
+* `skip` - Specify a number of pages to skip displaying. Can be useful
+  to produce a feed that only shows archived pages.
+* `rss` - controls generation of an rss feed. On by default if the wiki is
+  configured to use rss feeds, set to "no" to disable.
+* `atom` - controls generation of an atom feed. On by default if the wiki is
+  configured to use atom feeds, set to "no" to disable.
+* `feeds` - controls generation of all types of feeds. Set to "no" to
+  disable generating any feeds.
+* `postform` - Set to "yes" to enables a form to post new pages to a [[blog]].
+* `postformtext` - Set to specify text that is displayed in a postform.
+* `rootpage` - Also enables a form to post new pages to a [[blog]], and
+  allows specifying of a page that is used as the parent page for new pages.
+* `archive` - If set to "yes", only list page titles and some metadata, not
+  full controls.
+* `quick` - Build archives in quick mode, without reading page contents for
+  metadata. By default, this also turns off generation of any feeds.
+* `template` - Specifies the template to fill out to display each inlined
+  page. By default the `inlinepage` [[template|wikitemplates]] is used, while
+  the `archivepage` template is used for archives. Set this parameter to
+  use some other, custom template, such as the `titlepage` template that
+  only shows post titles. Note that you should still set `archive=yes` if
+  your custom template does not include the page content.
+* `raw` - Rather than the default behavior of creating a [[blog]],
+  if raw is set to "yes", the page will be included raw, without additional
+  markup around it, as if it were a literal part of the source of the 
+  inlining page.
+* `description` - Sets the description of the rss feed if one is generated.
+  Defaults to the name of the wiki.
+* `actions` - If set to "yes" add links to the bottom of the inlined pages 
+  for editing and discussion (if they would be shown at the top of the page
+  itself).
+* `sort` - Controls how inlined pages are sorted. The default, "age" is to
+  sort newest created pages first. Setting it to "title" will sort pages by
+  title, and "mtime" sorts most recently modified pages first.
+* `reverse` - If set to "yes", causes the sort order to be reversed.
+* `feedpages` - A [[PageSpec]] of inlined pages to include in the rss/atom
+  feeds. The default is the same as the `pages` value above, and only pages
+  matches by that value are included, but some of those can be excluded by
+  specifying a tighter [[PageSpec]] here.
+* `feedshow` - Specify the maximum number of matching pages to include in
+  the rss/atom feeds. The default is the same as the `show` value above,