more: Add pages parameter to limit where the more is displayed. (thanks, dark)

master
Joey Hess 2010-11-16 15:00:04 -04:00
parent 021676e489
commit ec6c1269d2
4 changed files with 13 additions and 1 deletions

View File

@ -26,7 +26,10 @@ sub preprocess (@) {
$params{linktext} = $linktext unless defined $params{linktext};
if ($params{page} ne $params{destpage}) {
if ($params{page} ne $params{destpage} &&
(! exists $params{pages} ||
pagespec_match($params{destpage}, $params{pages},
location => $params{page}))) {
return "\n".
htmllink($params{page}, $params{destpage}, $params{page},
linktext => $params{linktext},

2
debian/changelog vendored
View File

@ -1,6 +1,8 @@
ikiwiki (3.20101113) UNRELEASED; urgency=low
* websetup: Fix encoding problem when restoring old setup file.
* more: Add pages parameter to limit where the more is displayed.
(thanks, dark)
-- Joey Hess <joeyh@debian.org> Tue, 16 Nov 2010 14:23:47 -0400

View File

@ -11,6 +11,11 @@ leads to the full version of the page. Use it like this:
If the `linktext` parameter is omitted it defaults to just "more".
An optional `pages` parameter can be used to specify a
[[ikiwiki/PageSpec]], and then the "more" link will only be displayed
when the page is inlined into a page matching that PageSpec, and otherwise
the full content shown.
Note that you can accomplish something similar using a [[toggle]] instead.
[[!meta robots="noindex, follow"]]

View File

@ -24,3 +24,5 @@ I can now call it as
I'm not entirely happy with the design, since I would rather put this information in the inline directive instead of in every story post. Unfortunately I found no way to pass parameters from the inline directive to the inlined page.
-- [[dark]]
> Me neither, but nor do I see a better way, so [[applied|done]]. --[[Joey]]