0

我通过复制moodle/theme文件夹中的boxxie主题文件夹并将其重命名为我的主题来创建一个主题。现在我想拥有自己的登录前首页,所以在主题/mytheme/config.php 中,我将 $THEME->layouts 的“frontpage”文件从“frontpage.php”更改为“index.php”,其中索引.php 是我的自定义 html 主题的索引页。

我已将文件夹(css、js 等)放在主题的布局文件夹中,在从 moodle 管理部分选择主题后,它工作正常。

现在,问题是我对 about.php 和其他一些 php 页面使用了相同的主题。现在,每当我从浏览器打开 about.php 页面时,它都会显示 $OUTPUT 变量不可识别的错误,因为我在所有页面中使用 $OUTPUT->login_info() 方法来获取登录信息未登录

以下是在主题/mytheme/layout/index.php 中运行良好的代码(因为它包含在主 index.php 文件中)但在主题/mytheme/layout/about.php 中显示错误

<span style="font-size: 15px; color: #ffffff;"><?php echo $OUTPUT->login_info(); ?></span>

我试过什么?

  1. 将输出存储在会话变量 ($_SESSION['myoutputvar']) 中。

  2. 创建一个全局变量并将 $OUTPUT 存储在该变量中。

但这一切都没有奏效。我知道问题所在,但找不到解决方案,经过数小时的搜索,我终于将其发布在这里。

所以,我很乐意从你们那里得到任何帮助。提前致谢。

4

1 回答 1

0

您需要检查布局配置文件布局值。

并且还需要在about.php中设置

$PAGE->set_pagelayout('frontpage');
于 2012-12-06T09:17:54.327 回答