我正在为Moodle网站创建一个小胡子模板,并希望在首页上显示一些内容,但前提是用户尚未登录。我希望我能在模板中做到这样的事情:
{{^usernotloggedin}}
My content for users not logged in.
{{/usernotloggedin}}
但是,如果用户是否经过身份验证,我找不到有关胡须可用的用户变量的任何文档。
任何关于在哪里寻找或如何实现这一点的建议都会很棒。
答案 0 :(得分:0)
您需要调整调用模板的代码,以将该数据添加到传递给模板的上下文中。在这种情况下,您可以使用isloggedin()函数来设置要传递给模板的值。
答案 1 :(得分:0)
我希望我不会迟到这个问题,无论如何我还要加上我的答案
您的胡子文件是无法执行逻辑的简单模板。你能做的是
在您的控制器或调用渲染函数的文件中(渲染胡须文件并提供HTML),在那里应用检查
if(x[i] > x[j]){
swap(x[i],x[j])
swap(y[i],y[j])
}
一旦你应用了检查,你就可以发送带有标志标识符(ONLY TRUE或FALSE)的数组,胡志文件可以理解这些标识符。
例如 在您的控制器/块等中,您可以执行以下操作
require( '/path/to/moodle/config.php' );
if (isloggedin()) {
echo "you are logged in";
}
并在你的胡子文件中
$tagcloud = core_tag_collection::get_tag_cloud($this->config->tagcoll, $this->config->showstandard == core_tag_tag::STANDARD_ONLY, $this->config->numberoftags, 'name', '', $this->page->context->id, $this->config->ctx, $this->config->rec);
$content = $tagcloud->export_for_template($OUTPUT);
require( '/path/to/moodle/config.php' );
$flag = isloggedin() ? TRUE : FALSE;
array_push($content, $flag);
$this->content->text = $OUTPUT->render_from_template('core_tag/search_course_by_tags', $content);