1

我已经多次阅读Add a New Custom Page to phpBB指南,但仍然无法正常工作。

我正在尝试将此日历与 phpBB3 集成。我希望日历代码能够访问 phpBB 变量,因此它只会让注册用户添加新事件。

上面的 phpBB 指南建议创建一个简短的 PHP 页面,该页面设置 phpBB 会话,然后调用静态 HTML 模板,该模板使用服务器端包含 (SSI) 来拉入 phpBB 标头等。但我的日历页面不仅仅是静态 HTML , 它还包括 PHP 代码。我无法在 phpBB 页眉和页脚之间显示日历页面的 PHP 输出。日历的 HTML 显示正确,但没有执行任何 PHP。看来推荐的方法根本不允许在模板中执行 PHP 代码。

总结一下:我按照上面的指南,但用我的“calendar.php”替换了“aboutus_body.html”。我没有看到日历正确显示,带有 phpBB 页眉和页脚,我只看到了 calendar.php 的 HTML 部分,显示了 phpBB 页眉和页脚。没有可见的日历 PHP 输出。

4

1 回答 1

1

好的,我现在明白了正确的方法:

在遵循以下教程后:http ://wiki.phpbb.com/Practical.Add_custom_page

将所有日历代码复制到 aboutus.php 中(在教程中,设置 phpBB 会话的 php 文件,以及访问页面的 URL),在 $template->set_filenames 行之前

但关键是:不要使用 'print' 或 'echo' 输出 HTML,而是将所有 HTML 保存在一个变量中,例如 $calendar_html

然后,当您完成构建页面后,在 $template->set_filenames 行之前使用此代码:

$template->assign_vars(array(
    'CALENDAR_HTML' => $calendar_html,
   )
);

然后在模板中(教程中的 aboutus_body.html),像这样加载变量:

{CALENDAR_HTML}

...代替 HTML 内容。

于 2011-06-16T06:32:53.790 回答