如何将PHP页面与phpBB3集成


How do I integrate a PHP page with phpBB3?

我已经读了好几遍向phpBB添加新的自定义页面指南,但仍然无法实现。

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

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

总结一下:我遵循了上面的指南,但用我的"calendar.php"替换了"aboutus_body.html"。我没有看到用phpBB页眉和页脚正确显示的日历,而是只看到用phpBB页眉和页脚显示的calendar.hp的html部分。没有可见的日历PHP输出。

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

在上完成教程之后: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内容。