2009-11-23 88 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> 

我希望這將有助於...