如何创建全局可用的函数?
现在,应用程序的结构如下:
- 每种请求的不同模板(例如,一本书、作者或出版商的不同模板),例如:
- 这些模板中的每一个都使用 page.ftl 中宏中的常见元素进行装饰,例如:
[#ftl]
[#macro decorate]
<html>
<head>
<!-- some stuff here -->
</head>
<body>
<header><!-- more stuff here --></header>
<div id="main-content">[#nested /]</div>
<footer><!-- more stuff here --></footer>
</body>
</html>
[/#macro]
所以, book.ftl 看起来像:
[#ftl]
[#include page.ftl p]
[@p.decorate]
<h1>Book: The Bible</h1>
<dl>
<dt>Author:</dt>
<dd>God</dd>
</dl>
[#-- HERE'S THE IMPORTANT BIT --]
[@myFunctionHere('The Bible') /]
[#-- I ALSO NEED TO BE ABLE TO CALL myFunction IN INCLUDED PAGES TOO --]
[#import "_partial.ftl" /]
[/@p.decorate]
我想创建一个全局函数,该函数将被定义和包含一次并且随处可用(在 book.ftl 和其他人中,以及它碰巧导入/包含的任何模板)。
我将如何解决这个问题,最好没有它自己的命名空间?