netfrag.org . TWiki . TWikiTemplates |
view.tmpl
.
view.tmpl
) and pass them to the base template
&TWiki::Store::readTemplate()
so that the caller simply gets an expanded template file (the same as before)
%TMPL:<key>%
and %TMPL:<key>{"attr"}%
.
%TMPL:INCLUDE{"file"}%
: Includes a template file. The usual search path is applied.
%TMPL:DEF{"var"}%
: Define a variable. Text between this and the END directive is not returned, but put into a hash for later use.
%TMPL:END%
: Ends variable definition.
%TMPL:P{"var"}%
: Prints a previously defined variable.
oopsbase.tmpl
and a example oops dialog oopstest.tmpl
which is based on the base template. This is not the version that will go into the release, it is just a quick hack.
%TMPL:P{"sep"}%
Note: Added a dot to escape rendering of variables, i.e. read %.WEB%
as %WEB%
.
<table border="1" cellspacing="0" cellpadding="1"> <tr><td> <verbatim> %.TMPL:DEF{"sep"}% | %.TMPL:END% <html> <head> <title> %.WIKITOOLNAME% . %.WEB% . %.TOPIC% %.TMPL:P{"titleaction"}%</title> <base href="%.SCRIPTURL%/view%.SCRIPTSUFFIX%/%.WEB%/%.TOPIC%"> <meta name="robots" content="noindex"> </head> <body bgcolor="#FFFFFF"> <table width="100%" border="0" cellpadding="3" cellspacing="0"> <tr> <td bgcolor="%.WEBBGCOLOR%" rowspan="2" valign="top" width="1%"> <a href="%.WIKIHOMEURL%"> <img src="%.PUBURLPATH%/wikiHome.gif" border="0"></a> </td> <td> <b>%.WIKITOOLNAME% . %.WEB% . </b><font size="+2"> <B>%.TOPIC%</b> %.TMPL:P{"titleaction"}%</font> </td> </tr> <tr bgcolor="%.WEBBGCOLOR%"> <td colspan="2"> %.TMPL:P{"webaction"}% </td> </tr> </table> --- ++ %.TMPL:P{"heading"}% %.TMPL:P{"message"}% <table width="100%" border="0" cellpadding="3" cellspacing="0"> <tr bgcolor="%.WEBBGCOLOR%"> <td valign="top"> Topic <b>TWikiTemplates</b> . { %.TMPL:P{"topicaction"}% } </td> </tr> </table> </body> </verbatim> </td></tr> </table >
%.TMPL:DEF{"titleaction"}% (test =titleaction=) %.TMPL:END% %.TMPL:DEF{"webaction"}% test =webaction= %.TMPL:END% %.TMPL:DEF{"heading"}% Test heading %.TMPL:END% %.TMPL:DEF{"message"}% Test =message=. Blah blah blah blah blah blah blah blah blah blah blah... * Some more blah blah blah blah blah blah blah blah blah blah... * Param1: %PARAM1% * Param2: %PARAM2% * Param3: %PARAM3% * Param4: %PARAM4% %.TMPL:END% %.TMPL:DEF{"topicaction"}% Test =topicaction=: [[%.WEB%.%TOPIC%][OK]] %.TMPL:P{"sep"}% [[%.TWIKIWEB%.TWikiRegistration][Register]] %.TMPL:END% %.TMPL:INCLUDE{"oopsbase"}% |
.../bin/oops/Test/TestTopic2?template=oopstest¶m1=WebHome¶m2=WebNotify
twiki.tmpl
that all other templates include (well, will include when all done). The idea is to define all common parts of the templates in twiki.tmpl
and simply use that from all other templates.
Template variable: | Defines: | |
---|---|---|
%TMPL:DEF{"sep"}% | %TMPL:END% | "|" separator |
%TMPL:DEF{"htmldoctype"}% | Start of all HTML pages | |
%TMPL:DEF{"standardheader"}% | Standard header (for view, rdiff, ... | |
%TMPL:DEF{"simpleheader"}% | Simple header with reduced links (for edit, attach, oops,...) | |
%TMPL:DEF{"standardfooter"}% | Footer, excluding revision part and copyright part | |
%TMPL:DEF{"oops"}% | Skeleton of oops dialog |
preview.tmpl
template is now simply:
%TMPL:INCLUDE{"twiki"}% %TMPL:DEF{"titleaction"}% (oops) %TMPL:END% %TMPL:DEF{"webaction"}% *Attention* %TMPL:END% %TMPL:DEF{"heading"}% Topic is not saved yet %TMPL:END% %TMPL:DEF{"message"}% Please go back in your browser and save the topic. %TMPL:END% %TMPL:DEF{"topicaction"}% %TMPL:END% %TMPL:P{"oops"}%With this it should be possible to create a skin that overloads just the
twiki.tmpl
, i.e. a twiki.print.tmpl
that redefines the header and footer.
-- PeterThoeny? - 23 Jul 2001
----- Revision r1.2 - 07 Sep 2001 - 10:07 - MikeMannix?
|