connection between alias direcive and autotag
parent
fc296d49a0
commit
abea37a67a
|
@ -27,8 +27,8 @@ suggested for addition (possibly by means of a plugin):
|
||||||
> > <!-- there are so many people who misspell this, let's create a redirect -->
|
> > <!-- there are so many people who misspell this, let's create a redirect -->
|
||||||
> > \[[!alias Grece list=false]]
|
> > \[[!alias Grece list=false]]
|
||||||
>
|
>
|
||||||
> This page by itself will redirect from the "Hellas" and "Hellenic Republic"
|
> This page by itself will redirect from the "Hellas", "Hellenic Republic" and
|
||||||
> pages as if they both contained just:
|
> "Grece" pages as if they both contained just:
|
||||||
>
|
>
|
||||||
> > \[[!meta redir="Greece"]]
|
> > \[[!meta redir="Greece"]]
|
||||||
>
|
>
|
||||||
|
@ -44,4 +44,29 @@ The proposed plugin/directive could be extended, eg. by also including
|
||||||
old-style redirects in the alias list, but that might introduce unwanted
|
old-style redirects in the alias list, but that might introduce unwanted
|
||||||
coupling with the meta directive.
|
coupling with the meta directive.
|
||||||
|
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
On second thought, implementing this might have similarities with
|
||||||
|
[[todo/auto-create tag pages according to a template]] -- the auto-created
|
||||||
|
pages would, if the way of the alias directive is followed, not create physical
|
||||||
|
files, though, but be created just when someone edits them.
|
||||||
|
|
||||||
|
If multiple plugins do such a trick, they would have to fight over who comes
|
||||||
|
first. If, for example, we have a setup where not yet created tag pages are
|
||||||
|
automatically generated as "\[[!inline pages="link(<TMPL_VAR TAG>)"
|
||||||
|
archive="yes"]]" and aliases are enabled, and a non-tag pages grabs a tag as an
|
||||||
|
alias (as to redirect all taglinks of the tag to itself), there are two
|
||||||
|
possibilities:
|
||||||
|
|
||||||
|
* The autotag plugin comes first:
|
||||||
|
* autotag sees the missing tag and creates its "\[[!inline" stuff
|
||||||
|
* alias sees that there is already content and adds its prefix
|
||||||
|
* The alias plugin comes first (this is the prefered way):
|
||||||
|
* alias sees the empty page, sees it is not contested by other alias
|
||||||
|
directives and creates its "\[[!meta" redirect
|
||||||
|
* autotag sees there is already content and doesn't do anything
|
||||||
|
|
||||||
|
That issue could be handled with "priority number" on the hook, with plugins
|
||||||
|
with a lower number being called first.
|
||||||
|
|
||||||
[[!tag wishlist]]
|
[[!tag wishlist]]
|
||||||
|
|
|
@ -248,4 +248,17 @@ I've tested it fairly thouroughly. --[[Joey]]
|
||||||
[a358d74bef51dae31332ff27e897fe04834571e6]: http://git.liegesta.at/?p=ikiwiki.git;a=commitdiff;h=a358d74bef51dae31332ff27e897fe04834571e6 (commitdiff for a358d74bef51dae31332ff27e897fe04834571e6)
|
[a358d74bef51dae31332ff27e897fe04834571e6]: http://git.liegesta.at/?p=ikiwiki.git;a=commitdiff;h=a358d74bef51dae31332ff27e897fe04834571e6 (commitdiff for a358d74bef51dae31332ff27e897fe04834571e6)
|
||||||
[981400177d68a279f485727be3f013e68f0bf691]: http://git.liegesta.at/?p=ikiwiki.git;a=commitdiff;h=981400177d68a279f485727be3f013e68f0bf691 (commitdiff for 981400177d68a279f485727be3f013e68f0bf691)
|
[981400177d68a279f485727be3f013e68f0bf691]: http://git.liegesta.at/?p=ikiwiki.git;a=commitdiff;h=981400177d68a279f485727be3f013e68f0bf691 (commitdiff for 981400177d68a279f485727be3f013e68f0bf691)
|
||||||
|
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Even if this is already marked as done, I'd like to suggest an alternative
|
||||||
|
solution:
|
||||||
|
|
||||||
|
Instead of creating a file that gets checked in into the RCS, the source files
|
||||||
|
could be left out and the output files be written as long as there is no
|
||||||
|
physical source file (think of a virtual underlay). Something similar would be
|
||||||
|
required to implement [[todo/alias directive]], which couldn't be easily done
|
||||||
|
by writing to the RCS as the page's contents can change depending on which
|
||||||
|
other pages claim it as an alias. --[[chrysn]]
|
||||||
|
|
||||||
|
|
||||||
[[!tag done]]
|
[[!tag done]]
|
||||||
|
|
Loading…
Reference in New Issue