2014-02-19 75 views
0

我在理解moodle在呈現模板的位置時遇到問題。 我有頁面的URL結尾:/enrol/index.php?id=4所以我假設模板是從報名目錄。 從這個URL的頁面我想添加一些自定義的PHP和HTML,你能告訴我在哪裏可以找到這個頁面和後端的前端?其中Moodle正在呈現模板

此致

回答

1

在Moodle的2.5,在enrol\index.php下面的代碼,行#57,負責檢索所有要顯示的內容:

foreach($enrolinstances as $instance) { 
    if (!isset($enrols[$instance->enrol])) { 
     continue; 
    } 
    $form = $enrols[$instance->enrol]->enrol_page_hook($instance); 
    if ($form) { 
     $forms[$instance->id] = $form; 
    } 
} 

的實際內容被打印到用戶在#行90與

foreach ($forms as $form) { 
    echo $form; 
} 

任何地方在這裏你可以注入定製內容......,理想情況下,你的代碼應該在頭後去,要在頁腳之前,例如

echo $OUTPUT->header(); 
echo $OUTPUT->heading(get_string('enrolmentoptions','enrol')); 

... your code goes here 

echo $OUTPUT->footer(); 
+0

非常感謝!你非常幫助我!你能告訴我也如何獲得登錄的用戶數據,如他的登錄名,姓名等? 這是可能的或我必須爲此編寫特殊的查詢? –

+0

您可以使用'$ USER'對象獲得有關登錄用戶的信息。您可以執行'print_r($ USER)'來查看所有可用的字段。 – Ryan