如何在Moodle主题设置中创建自定义标记?

时间:2012-11-19 16:54:10

标签: themes settings moodle

我需要在Moodle 2.x主题设置中创建一个元素列表,我将使用Moodle包含的YUI启用拖放重新排序。我的问题是我不知道如何使用自定义主题设置添加我的自定义HTML / JS。我只能找到有关使用Moodle提供的预定义函数添加设置的文档,例如admin_setting_configtextadmin_setting_configselectadmin_setting_configtextarea等...如何创建自己的标记和在主题设置页面中使用我自己的javascript? 谢谢!

1 个答案:

答案 0 :(得分:3)

您可以使用Moodle创建自定义页面,请记住要求配置并设置页面:

require('../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
//page definition
$PAGE->set_context(get_context_instance(CONTEXT_SYSTEM));
$PAGE->set_url('/theme/your_theme/admin/manage.php');
$PAGE->set_pagetype('theme_name_manage');
$PAGE->set_title('Manage your theme');
$PAGE->set_heading('Manage your theme');
echo $OUTPUT->header();
//Page content
echo $OUTPUT->footer();

在此页面中,您可以定义所需的任何设置或配置。最后,您需要将此页面添加到站点管理导航中。确保您的主题的根目录中有 settings.php ,并且在该文件中您将需要这样的内容:

if ($hassiteconfig) { // needs this condition or there is error on login page
    $ADMIN->add('themes', new admin_externalpage('theme_name', 
        'Manage Theme XYZ', 
        $CFG->wwwroot."/theme/name/admin/manage.php", 
        'moodle/site:config'));
}

主题是“主题”管理菜单的参考我想你可能想要添加它。请记住,您应该在上面的示例中使用get_string而不是硬编码字符串。