我是Moodle的新人。我要求在使用$ mform-> addHelpbutton()创建的帮助图标中添加动态帮助文本;功能。但我们无法做到这一点。
任何人都可以告诉我任何其他方式来传递moodles形式帮助图标中的动态字符串。
答案 0 :(得分:2)
addHelpButton()方法具有参数 $ component ,其中包含单击帮助图标()时要显示的当前文本。此文本从语言文件中定义的 $ string 数组中读取。
这里的技巧是可以动态构建数组元素: - )
我们举一个例子: 在您的mod_form.php中,您可以使用以下命令构建帮助图标:
$mform->addHelpButton ( 'element_name', 'your_identifier', 'your_help_text' );
文本 your_help_text 通常在您的语言文件中读取:
$string ['your_help_text_help'] = 'This is my static help text';
您可以在此处更改此行:
$string ['your_help_text_help'] = get_dynamic_help_string($any_parameter);
然后你定义你的功能:
function get_dynamic_help_string($any_parameter) {
$text = This is my dynamic help text with the current date: ;
$text .= ' '.date("Y/m/d");
return $text; }
现在,每次刷新表单时,都会动态构建帮助文本。当然,如果你愿意,你可以在这里使用任何逻辑。
注意:您需要在此管理插件的缓存,以便始终获得功能的最新结果。请参阅此link以删除Moodle缓存。