2

我正在尝试将最新的推文“小部件”插入 Symfony2 项目。我找到了一个用 PHP 编写的理想脚本,可以完美地完成这项工作。

但是,我不知道将 3rd 方 PHP 文件放在 Symfony2 项目中的最佳位置。我已将它们放在与所有树枝文件所在的文件夹相同的文件夹中,将名称更改为读取 tweets.php.twig,甚至将它们放置在 web 文件夹中。当我尝试将该文件包含在需要 Twitter 提要的 twig 文件中时,它会出现一个错误,提示它找不到该文件。

我有正确的想法,还是必须将 PHP 转换为树枝文件或将 PHP 脚本写入控制器?

4

1 回答 1

3

我相信推荐的方法是创建一个 Symfony2 包,它封装了推文小部件的所有逻辑。然后,您将调用您的捆绑控制器并将响应传递给您的树枝模板。

如果这太复杂或者你想要一些更快速和更脏的东西 - 你可以创建一个像 TweetWidgetController.php 这样的控制器并将代码作为一个像 widgetAction 这样的操作放入其中。只需确保在 Symfony 响应对象中返回推文小部件输出。

然后从你的主控制器 - 你可以做类似的事情

$widget = $this->forward('YourBundle:TweetWidget:widget', array('twitterid' => 'yourtwitterid'));

return $this->render('YourBundle:yourtemplate.html.twig',array('widget' => $widget->getContent()));

现在在您的树枝模板中,您可以通过将其引用为:

{{ widget }}
于 2011-08-31T18:25:13.373 回答