2009-11-23 106 views
0

我已经创建了自己的扩展和模块。我可以通过转到他们的URL来查看模块。但是,现在我想将它们嵌入到页面中,就像内容类一样。我该如何去做呢?如何在页面上嵌入模块?

谢谢!

+0

你能成为你想做些什么和你的模块更精确呢? – foobar 2012-12-10 20:27:38

回答

0

您必须create template operator或功能,并在模板中使用它们。

+0

模板运算符用于格式化数据(如大写字母())。 提取函数是为了检索数据。 模块更多我猜。 – foobar 2012-12-10 20:25:12

0

除非被调用的模块在PHP级别执行,否则不能在模块中“嵌入”模块。

例如,它可能这样写:

$module = eZModule::findModule('content'); 
$result = $module->run('history', array(1)); 

但是,如果你想显示与你的模块什么,你应该声明,你的扩展包含一些模板,并覆盖了一些模板。

假设您想制作自己的注册模块。

步骤1,您可能需要在your_extension/settings/design.ini.append.php补充一点:

[ExtensionSettings] 
DesignExtensions[]=your_extension 

所以,你现在可以添加自己的user/register.tpl

此模板包含这样一种形式:

<form action={'/user/register'|ezurl}... 

所以你只需要复制模板,但是:

<form action={'/your_module/register'|ezurl}... 

现在让我们假设你的模板应该显示一些与你的模块相关的信息。您可能需要define some fetch functions这样你就可以写这样的事:

{def $nb = fetch('your_module','beta_accounts')} 

<h2>Hurry up! There are only {$nb|wash} available accounts for free!</h2> 
<form action={'/your_module/register'|ezurl} method="POST"> 
    ... 
</form> 

我希望这将有助于...

相关问题