]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blob - doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn
HTML::Tree v4 is not entirely backwards-compatible
[git.ikiwiki.info.git] / doc / bugs / can__39__t_mix_template_vars_inside_directives.mdwn
1 I often find myself wrapping the same boiler plate around [[ikiwiki/directives/img]] img directives, so I tried to encapsulate it using the following [[ikiwiki/directives/template]]:
4     <div class="image">
5     [\[!img <TMPL_VAR raw_href>
6     size="<TMPL_VAR raw_size>"
7     
8     <TMPL_IF alt>
9       alt="<TMPL_VAR raw_alt>"
10     <TMPL_ELSE>
11       <TMPL_IF caption>
12         alt="<TMPL_VAR raw_alt>"
13       <TMPL_ELSE>
14         alt="[pic]"
15       </TMPL_IF>
16     </TMPL_IF>
17     
18     ]]
19     <TMPL_IF caption>
20     <p><TMPL_VAR raw_caption></p>
21     </TMPL_IF>
22     </div>
24 The result, even with htmlscrubber disabled, is mangled, something like
26     <div class="image">
27     <span class="createlink"><a href="http://jmtd.net/cgi?
28         page=size&amp;from=log0.000000old_new_test&amp;do=create"
29         rel="nofollow">?</a>size</span>
30     
31     </div>
33 Any suggestions gladly received. -- [[Jon]]
35 > Well, you *should* be able to do things like this, and in my testing, I
36 > *can*. I used your exact example above (removing the backslash escape)
37 > and invoked it as:
38 >       \[[!template id=test href=himom.png size=100x]]
39
40 > And got just what you would expect.
41
42 > I don't know what went wrong for you, but I don't see a bug here. 
43 > My guess, at the moment, is that you didn't specify the required href
44 > and size parameters when using the template. If I leave those off,
45 > I of course reproduce what you reported, since the img directive gets
46 > called with no filename, and so assumes the size parameter is the image
47 > to display.. [[done]]? --[[Joey]]